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

多目標測試案例優先順序之探討

Multi-Objective Test Case Prioritization

指導教授 : 陳育欣

摘要


軟體開發的生命週期中,測試階段已是開發流程的後段,時常導致測試階段因時間的壓縮使測試未執行完善,然而在測試階段所進行的迴歸測試是一個昂貴耗時的測試程序,需不斷地執行測試案例。而如何在時間、成本以及人力…等限制下,有效地執行迴歸測試便成為一個重要議題,而在迴歸測試之測試案例的管理技術中,包含了測試案例減少化、選擇測試案例及測試案例優先性。 由於過去的文獻大多是單目標方式來考量進行求解測試案例優先順序問題,例如:錯誤因子測試案例優先順序問題、顧客需求之測試案例優先順序問題等。但本研究有別於以往,是使用兩個目標值進行測試案例優先順序於黑箱測試環境中,多目標值有:優先級分數及需求檢測率(Average Percentage of Requirement Detected, APRD)。而在優先分數所考量之因子,有測試案例的需求嚴重度(Severity)、複雜度(Complexity)以及相互依賴性(Inter-dependency);而需求檢測率(APRD)方面主要是測量如何快速檢測完所有的需求於黑箱測試中。 本研究提蟻群最佳化演算法結合多目標決策-柏拉圖最佳前緣曲線方法進行求解,其結果在與其它方法進行比較,實驗結果指出本研究產生的結果優於其它演算法並可提升測試效力。

並列摘要


The testing phase occurs near the end of the software development life cycle. Typically a great amount of time is spent early in the development process, resulting in time-compressed testing phase. Therefore, test case management techniques are researched and developed to better manage the test cases developed during the testing process, including test suite minimization, test case selection and test case prioritization. Currently, most literatures on test case prioritization focus on single objective only, such as fault-factor based and customer requirement test case prioritization. This study is different from previous researches by focusing on two objectives for test case prioritization in the black-box environment: prioritization score and Average Percentage of Requirement Detected (APRD). Prioritization score is based on factors including severity, complexity and inter-dependency; APRD is a measure of how quickly requirements are detected within the black-box testing process. This study incorporates the ant colony optimization meta-heuristic with Pareto optimal front to solve the multi-objective problem. The experimental results, in comparison with another meta-heuristic, indicate that the proposed approach is competitive and even better than the other.

參考文獻


余東欣. 2012."黑箱測試之測試案例排序及篩選."中原大學工業與系統工程學系.
Deb, K., J. Sundar, N. Udaya Bhaskara Rao, and S. Chaudhuri. "Reference Point Based Multi-Objective Optimization using Evolutionary Algorithms." International Journal of Computational Intelligence Research 2, no. 3 (2006): 273-286.
Elbaum, S., A. Malishevsky, and G. Rothermel. Incorporating Varying Test Costs and Fault Severities into Test Case Prioritization. IEEE Computer Society, 2001.
Elbaum, S., A. G. Malishevsky, and G. Rothermel. "Prioritizing Test Cases for Regression Testing." ACM SIGSOFT Software Engineering Notes 25 (5) (2000): 102-12.
Harrold, M. J. "Testing Evolving Software." Journal of Systems and Software 47, no. 2 (1999): 173-181.

延伸閱讀