透過您的圖書館登入
IP:3.90.242.249
  • 學位論文

運用蟻群演算法於黑箱測試之測試案例排序

Apply Ant Colony Optimization to Test Case Prioritization for Blackbox Testing

指導教授 : 陳育欣
若您是本文的作者,可授權文章由華藝線上圖書館中協助推廣。

摘要


軟體產品在發佈前需經過白箱測試及黑箱測試兩個階段的測試,盡可能在不同的執行情況下,找出可能潛在的錯誤或缺陷,提升軟體品質,因此需不斷執行迴歸測試,然而迴歸測試是一個昂貴耗時的測試程序,需不斷地執行測試案例,在時間、成本以及人力…等限制下,如何有效地執行迴歸測試便成為一個重要議題,其中,測試案例優先順序技術是一個常見的技術,透過將測試案例進行排序,期望能達到所設定的測試效力。 過去文獻探討之排序因子多為成本、需求、錯誤個數、嚴重度…等考量,尚未考慮相互依賴性。有別於過去探討的測試案例優先順序問題,本研究提出黑箱測試環境下測試案例的優先順序排序技術,以嚴重度(Severity)、複雜度(Complexity)以及相互依賴性(Inter-dependency)三項因子做為排序的考量,運用蟻群最佳化演算法,結合最大部分排序法及隨意插入法(MPO/AI)兩者,使產生的測試案例優先順序具有先後限制,而並非只是一組測試案例執行順序的組合解。 本研究將提出之方法與其他求解排序問題的方法進行比較,實驗結果指出,本研究提出之方法在於求解SOP問題,產生之結果近似於其他演算法,而執行時間相較於其他演算法有明顯縮短,此外,在於求解TCP問題時,本研究求得的測試案例優先順序解優於所比較之方法,實際運用於本研究設計之圖形使用者介面(GUI)測試,其所產生的測試效力亦優於所比較之方法,因此,由實驗結果說明,本研究考量之投入因子以及所提出之蟻群演算法結合MPO/AI的排序方法,可有效找出測試案例的優先順序。

並列摘要


A mature software products have to pass two testing processes before being released, white-box testing and black-box testing, as much as possible to implement testing in different scenarios, to identify potential faults and defects. In order to improve software quality, testing engineers should perform regression testing for each software release. However, regression testing is a time consuming and expensive testing procedure, required to execute numerous test cases. Due to time, cost and labor constraints, how to effectively perform regression testing has become an important issue. In such case, test case prioritization technique is one of effective technologies. Test case prioritizaiton techniques schedule test cases in an order that attempts to maximize the effectiveness in terms of meeting some performance goals. In previous literatures, test case prioritization techniques considered prioritization factors based on costs, requirements, number of faults, faults severities, and so on; the researches have never considered the inter-dependency between test cases. Unlike past researches of the test case prioritization problem, we proposed the test case prioritization techniques based on severity, complexity and inter-dependency in black-box testing. Based ant colony optimization, and combined with the Maximum Partial Order/Arbitrary Insertion(MPO/AI)method, we generated test case execution order with precedence constraints. In this study, the method we proposed to solve scheduling problem is compared with the other algorithms. To solve the SOP problem, experimantal results indicate that our proposed technique yields a comparable value to other algorithms, and execute time is shortened significantly. To solve the TCP problem, we obtain better result than the comparison algorithms. Using in practical application of our graphical user interface(GUI)testing, the testing effectiveness is superior to the comparison algorithms. Therefore, the experimental results show that, our proposed technique is useful to prioritizate test cases.

參考文獻


Dorigo, M., and L. M. Gambardella. 1997. Ant colony system: A cooperative learning approach to the traveling salesman problem. Evolutionary Computation, IEEE Transactions 1 (1): 53-66.
Elbaum, S., A. Malishevsky, and G. Rothermel. 2001. Incorporating varying test costs and fault severities into test case prioritization. Paper presented at Proceedings of the 23rd International Conference on Software Engineering.
Elbaum, S., A. G. Malishevsky, and G. Rothermel. 2000. Prioritizing test cases for regression testing. ACM SIGSOFT Software Engineering Notes 25 (5): 102-12.
Escudero, L. F. 1988. An inexact algorithm for the sequential ordering problem. European Journal of Operational Research 37 (2): 236-49.
Gambardella, L. M., and M. Dorigo. 2000. An ant colony system hybridized with a new local search for the sequential ordering problem. INFORMS Journal on Computing 12 (3): 237-55.

被引用紀錄


宋榮浚(2013)。測試案例篩選與分配於多測試者下測試完成時間最小化問題〔碩士論文,中原大學〕。華藝線上圖書館。https://doi.org/10.6840%2fcycu201300507
余東欣(2012)。黑箱測試之測試案例排序及篩選〔碩士論文,中原大學〕。華藝線上圖書館。https://doi.org/10.6840%2fcycu201200514

延伸閱讀