摘 要:對PSO優化算法進行改進,結合程序流程圖提出一種負載壓力測試用例自動生成方法。以一個找到成功路徑的粒子代表一個用戶操作,對重復的成功路徑進行統計。根據成功路徑和其次數生成測試數據。實驗表明該算法很好的模擬了用戶對被測軟件的使用過程。與基本的黑盒測試相比,該算法考慮了被測軟件程序流程圖,因此輸入的測試數據不再是獨立無關聯的,而是有一定的聯系,根據這些聯系可以更好地模擬用戶。
關鍵詞:軟件測試;算法;測試用例生成
1 概述
近年來,隨著軟件系統規模的擴大和復雜程度的提高,開發者和用戶面對的系統都變得越來越大。對軟件的重量要求也越來越高,不僅要求軟件的基本功能,而且要使軟件系統能夠承受大量的并發訪問。由于并發訪問量過大而造成系統響應延遲甚至癱瘓的例子有很多。如2008年奧運會訂票,和春運網上訂票由于訪問量過多而造成系統癱瘓。在這種情況下,為了驗證軟件系統性能而實施的負載壓力測試變得尤為重要。而在負載壓力測試中需要大批測試數據模擬用戶行為對軟件系統進行并發訪問。因此,在負載壓力測試中測試數據的生成是很重要的。
本文提出一種基于粒子群優化(PSO)和程序流程圖的負載壓力測試數據生成方法,并以銀行自動取款機的測試數據生成為例,生成負載壓力測試數據。實驗結果表明PSO算法結合程序流程圖適用于負載壓力測試數據的自動生成。……