專利名稱:數(shù)據(jù)流測(cè)試用例生成方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)據(jù)流測(cè)試用例生成方法。
背景技術(shù):
軟件測(cè)試的一個(gè)重要的特征就是根據(jù)所要測(cè)試對(duì)象的特點(diǎn)來設(shè)計(jì)相應(yīng)的測(cè)試用例。測(cè)試用例的設(shè)計(jì)是軟件測(cè)試的首要環(huán)節(jié),對(duì)后期測(cè)試工作具有重要的指導(dǎo)作用,也是高質(zhì)量軟件的根本保證。至今,國(guó)內(nèi)外專家學(xué)者提出了各種測(cè)試用例自動(dòng)生成算法,然而基于數(shù)據(jù)流測(cè)試的測(cè)試用例自動(dòng)生成算法研究得較少。數(shù)據(jù)流測(cè)試用例自動(dòng)生成算法(Automatictestcase generation algorithm for data flow,簡(jiǎn)記為 ATGAFDF)是其中之一,ATGAFDF算法主要采用遺傳算法來搜索滿足數(shù)據(jù)流測(cè)試準(zhǔn)則的測(cè)試用例,然而ATGAFDF算法的適應(yīng)度函數(shù)設(shè)計(jì)的過于簡(jiǎn)單,使得算法的收斂較慢。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種數(shù)據(jù)流測(cè)試用例生成方法,該方法有利于提高數(shù)據(jù)流測(cè)試用例生成算法的收斂速度。本發(fā)明的目的是這樣實(shí)現(xiàn)的一種數(shù)據(jù)流測(cè)試用例生成方法,采用遺傳算法來搜索滿足數(shù)據(jù)流測(cè)試準(zhǔn)則的測(cè)試用例,在該方法中,適應(yīng)度按如下公式計(jì)算
權(quán)利要求
1.一種數(shù)據(jù)流測(cè)試用例生成方法,其特征在于采用遺傳算法來搜索滿足數(shù)據(jù)流測(cè)試準(zhǔn)則的測(cè)試用例,在該方法中,適應(yīng)度按如下公式計(jì)算
2.根據(jù)權(quán)利要求I所述的數(shù)據(jù)流測(cè)試用例生成方法,其特征在于設(shè)程序有k個(gè)輸入變量,第i個(gè)輸入變量表示為Xi,其中I < i < k,Xi的取值集合為Di,程序的一個(gè)測(cè)試用例表示為( .-% ),測(cè)試用例的變量編碼方法為對(duì)于數(shù)值型變量,設(shè)變量Xi的取值集合Di=Lai, bj,精度要求為屯,Hii是滿足條件訴-1的最小整數(shù),將變量\用長(zhǎng)度為叫的二進(jìn)制編碼串示,其i|義二進(jìn)制編碼串Si到變量Xi的映射按如下公式計(jì)算
3.根據(jù)權(quán)利要求2所述的數(shù)據(jù)流測(cè)試用例生成方法,其特征在于對(duì)于數(shù)值型變量,若變量Xi必須是整數(shù),則在換算過程中,按如下公式進(jìn)行強(qiáng)制轉(zhuǎn)換
全文摘要
本發(fā)明涉及一種數(shù)據(jù)流測(cè)試用例生成方法,采用遺傳算法來搜索滿足數(shù)據(jù)流測(cè)試準(zhǔn)則的測(cè)試用例,在該方法中,適應(yīng)度按如下公式計(jì)算;其中,fitness(t)表示適應(yīng)度,m表示測(cè)試用例t已經(jīng)覆蓋的路徑條數(shù),n表示程序總的需要覆蓋的路徑條數(shù),p表示在未覆蓋的(n-m)條路徑中包含的分支謂詞數(shù)量,所述分支謂詞為程序分支的條件表達(dá)式,α表示分支謂詞對(duì)適應(yīng)度的影響權(quán)重因子,fi(x)表示程序第i個(gè)分支的分支函數(shù)值。該方法有利于提高數(shù)據(jù)流測(cè)試用例生成算法的收斂速度。
文檔編號(hào)G06N3/12GK102708047SQ201210118820
公開日2012年10月3日 申請(qǐng)日期2012年4月23日 優(yōu)先權(quán)日2012年4月23日
發(fā)明者孔祥增, 張輝, 許力, 陳志德, 陳江勇 申請(qǐng)人:福建師范大學(xué)