一種軟件測(cè)試方法和裝置制造方法
【專(zhuān)利摘要】本發(fā)明屬于軟件測(cè)試領(lǐng)域,提供了一種軟件測(cè)試方法和裝置,該方法包括:a)、接收測(cè)試用例和測(cè)試參數(shù);b)、使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試;c)、判斷測(cè)試次數(shù)是否大于預(yù)設(shè)的最大測(cè)試次數(shù);d)、如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù),并返回步驟b)。本發(fā)明實(shí)施例能夠?qū)斎氲臏y(cè)試參數(shù)進(jìn)行變換組合,可以自動(dòng)生成新的測(cè)試參數(shù),自動(dòng)進(jìn)行多次的漏洞測(cè)試,從而有效的解決現(xiàn)有技術(shù)設(shè)置好測(cè)試參數(shù)后無(wú)法發(fā)現(xiàn)測(cè)試參數(shù)范圍外的漏洞的問(wèn)題,不需要人工進(jìn)行測(cè)試參數(shù)的增加,能夠提高測(cè)試效率和測(cè)試的便利性。
【專(zhuān)利說(shuō)明】一種軟件測(cè)試方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于軟件測(cè)試領(lǐng)域,尤其涉及一種軟件測(cè)試方法和裝置。
【背景技術(shù)】
[0002]為使軟件或者系統(tǒng)等產(chǎn)品能夠正常運(yùn)行或者防止非法用戶(hù)入侵,在軟件或系統(tǒng)投入使用前或者投入使用時(shí),需要對(duì)產(chǎn)品進(jìn)行測(cè)試,以提高其穩(wěn)定性和安全性。
[0003]如圖1為現(xiàn)有的軟件產(chǎn)品測(cè)試流程示意圖。在進(jìn)行軟件產(chǎn)品的測(cè)試前,測(cè)試人員設(shè)計(jì)好測(cè)試用例和準(zhǔn)備好測(cè)試參數(shù),然后啟動(dòng)自動(dòng)化測(cè)試系統(tǒng),由系統(tǒng)執(zhí)行各個(gè)測(cè)試參數(shù)下的測(cè)試用例,在系統(tǒng)執(zhí)行測(cè)試用例完畢后,輸出測(cè)試報(bào)告。
[0004]采用上述測(cè)試方法,在設(shè)置詳盡的測(cè)試參數(shù)以后,可以較好的完成對(duì)軟件產(chǎn)品的漏洞測(cè)試。但是,這種方法一旦由用戶(hù)設(shè)定好測(cè)試參數(shù)后,這些測(cè)試參數(shù)是固定的,系統(tǒng)無(wú)法發(fā)現(xiàn)測(cè)試用例設(shè)置的測(cè)試參數(shù)以外的軟件產(chǎn)品的漏洞,測(cè)試效率不高,如果優(yōu)化測(cè)試參數(shù),需要人工進(jìn)行添加和維護(hù),操作較為麻煩。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實(shí)施例的目的在于提供一種軟件測(cè)試方法,以解決現(xiàn)有技術(shù)中軟件產(chǎn)品測(cè)試時(shí),設(shè)置好測(cè)試參數(shù)后無(wú)法發(fā)現(xiàn)測(cè)試參數(shù)范圍以外的漏洞的問(wèn)題。從而提高測(cè)試效率和測(cè)試的便利性。
[0006]本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種軟件測(cè)試方法,所述方法包括下述步驟:
[0007]a)、接收測(cè)試用例和測(cè)試參數(shù);
[0008]b)、使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試;
[0009]c)、判斷測(cè)試次數(shù)是否大于預(yù)設(shè)的最大測(cè)試次數(shù);
[0010]d)、如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù),并返回步驟b)。
[0011]本發(fā)明實(shí)施例的另一目的在于提供一種軟件測(cè)試裝置,所述裝置包括:
[0012]接收單元,用于接收測(cè)試用例和測(cè)試參數(shù);
[0013]漏洞測(cè)試的執(zhí)行單元,用于使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試;
[0014]判斷單元,用于判斷測(cè)試次數(shù)是否大于預(yù)設(shè)的最大測(cè)試次數(shù);
[0015]測(cè)試參數(shù)變換單元,用于如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù)。
[0016]在本發(fā)明實(shí)施例中,在接收測(cè)試用例和測(cè)試參數(shù)后,使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試,然后對(duì)測(cè)試參數(shù)進(jìn)行變換組合后重新進(jìn)行測(cè)試,直到測(cè)試的次數(shù)達(dá)到預(yù)設(shè)的最大測(cè)試次數(shù)。本發(fā)明實(shí)施例能夠?qū)斎氲臏y(cè)試參數(shù)進(jìn)行變換組合,可以自動(dòng)生成新的測(cè)試參數(shù),自動(dòng)進(jìn)行多次的漏洞測(cè)試,從而有效的解決現(xiàn)有技術(shù)設(shè)置好測(cè)試參數(shù)后無(wú)法發(fā)現(xiàn)測(cè)試參數(shù)范圍外的漏洞的問(wèn)題,不需要人工進(jìn)行測(cè)試參數(shù)的增加,能夠提高測(cè)試效率和測(cè)試的便利性。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0017]圖1是本發(fā)明第一實(shí)施例提供的軟件測(cè)試的實(shí)現(xiàn)流程圖;
[0018]圖2是本發(fā)明第二實(shí)施例提供的軟件測(cè)試的實(shí)現(xiàn)流程圖;
[0019]圖3為本發(fā)明第二實(shí)施例提供的軟件測(cè)試的又一實(shí)現(xiàn)流程圖;
[0020]圖4是本發(fā)明第三實(shí)施例提供的軟件測(cè)試的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0021]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0022]在本發(fā)明實(shí)施例中,在接收測(cè)試用例和測(cè)試參數(shù)后,使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試,然后對(duì)測(cè)試參數(shù)進(jìn)行變換組合后重新進(jìn)行測(cè)試,直到測(cè)試的次數(shù)達(dá)到預(yù)設(shè)的最大測(cè)試次數(shù)。由于其能夠?qū)斎氲臏y(cè)試參數(shù)進(jìn)行變換組合,可以自動(dòng)生成新的測(cè)試參數(shù),自動(dòng)進(jìn)行多次的漏洞測(cè)試,從而有效的解決現(xiàn)有技術(shù)設(shè)置好測(cè)試參數(shù)后無(wú)法發(fā)現(xiàn)測(cè)試參數(shù)范圍外的漏洞的問(wèn)題,不需要人工進(jìn)行測(cè)試參數(shù)的增加,能夠提高測(cè)試效率和測(cè)試的便利性。而設(shè)置最大測(cè)試次數(shù),可以避免系統(tǒng)作過(guò)多重復(fù)測(cè)試操作,節(jié)省系統(tǒng)資源。在測(cè)試后對(duì)測(cè)試參數(shù)分析,過(guò)濾掉部分未出現(xiàn)異常的測(cè)試參數(shù),能夠?qū)y(cè)試參數(shù)進(jìn)行更好的優(yōu)化,進(jìn)一步提高測(cè)試效率。
[0023]實(shí)施例一:
[0024]圖1示出了本發(fā)明實(shí)施例一提供的軟件測(cè)試,特別是在浸透測(cè)試中的實(shí)現(xiàn)流程,詳述如下:
[0025]在步驟SlOl中,接收測(cè)試用例和測(cè)試參數(shù)。
[0026]具體的,本發(fā)明所述測(cè)試用例,是指為某個(gè)特殊目標(biāo)而編制的一組測(cè)試輸入、執(zhí)行條件以及預(yù)期結(jié)果,以便測(cè)試某個(gè)程序路徑或核實(shí)是否滿(mǎn)足某個(gè)特定需求。測(cè)試參數(shù)是指用于測(cè)試用例輸入的測(cè)試參數(shù)。而滲透測(cè)試,是為了證明網(wǎng)絡(luò)防御按照預(yù)期計(jì)劃正常運(yùn)行而提供的一種機(jī)制。
[0027]所接收的測(cè)試用例和測(cè)試參數(shù),為軟件測(cè)試人員預(yù)先制定的,根據(jù)不同的軟件測(cè)試設(shè)置不同的測(cè)試用例,或者在同一軟件的不同階段制作不同的測(cè)試用例和使用不同的測(cè)試參數(shù)。
[0028]在步驟S102中,使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試。
[0029]具體的,對(duì)于設(shè)置有多個(gè)測(cè)試參數(shù)的測(cè)試過(guò)程,由測(cè)試用例逐個(gè)加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試,根據(jù)測(cè)試用例的執(zhí)行條件和預(yù)期結(jié)果,可以判斷所述測(cè)試參數(shù)是否屬于出現(xiàn)異常的測(cè)試參數(shù)或者屬于未出現(xiàn)異常的測(cè)試參數(shù)。
[0030]在步驟S103中,判斷測(cè)試次數(shù)是否大于預(yù)設(shè)的最大測(cè)試次數(shù)。
[0031]具體的,預(yù)設(shè)的最大測(cè)試次數(shù)一般可根據(jù)測(cè)試的具體情況靈活設(shè)定,考慮到測(cè)試參數(shù)重新變換組合的可能性,可根據(jù)測(cè)試參數(shù)的個(gè)數(shù)設(shè)定與測(cè)試參數(shù)的個(gè)數(shù)相近。如某個(gè)測(cè)試用例輸入的測(cè)試參數(shù)為10個(gè),可設(shè)置最大測(cè)試次數(shù)為10次,當(dāng)然其并不局限于此,具體測(cè)試還應(yīng)以具體情況而定。
[0032]在每執(zhí)行步驟S102所述的漏洞測(cè)試后,計(jì)數(shù)器對(duì)測(cè)試次數(shù)加I操作,然后執(zhí)行本步驟所述的比較操作。
[0033]在步驟S104中,如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù),并返回步驟102采用新的測(cè)試參數(shù)重新執(zhí)行漏洞測(cè)試。
[0034]具體的,經(jīng)過(guò)步驟S103所述的判斷步驟,當(dāng)測(cè)試次數(shù)不大于所述預(yù)設(shè)的最大次數(shù)時(shí),表示還可以進(jìn)行下一次的測(cè)試操作。
[0035]在所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),所述測(cè)試參數(shù)的變換組合可以包括下面各參數(shù)中的一種或多種:
[0036]所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù)時(shí)的測(cè)試參數(shù);
[0037]將所述測(cè)試參數(shù)截?cái)嗪筮M(jìn)行隨機(jī)組合;
[0038]將所述測(cè)試參數(shù)的一部分用隨機(jī)數(shù)代替,得到新的測(cè)試參數(shù)。
[0039]關(guān)于對(duì)所述參數(shù)截?cái)嗪筮M(jìn)行隨機(jī)組合舉例如下:測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù)時(shí)的測(cè)試參數(shù)包括兩個(gè),分別為X和Y,測(cè)試參數(shù)X包括[a,b,c,d]四個(gè)數(shù)值,測(cè)試參數(shù)Y包括[e,f,g,h]四個(gè)數(shù)值,對(duì)測(cè)試參數(shù)截?cái)嗪笾匦陆M合,如對(duì)X和Y的中間截?cái)?,重新組合后得到測(cè)試參數(shù)集合:[a, b, g, h]、[e, f, c, d]、[a, b, e, f]、[c, d, g, h],當(dāng)然也可以有多種截?cái)喾绞?,如將測(cè)試參數(shù)X的中的一個(gè)或者三個(gè)值用測(cè)試參數(shù)Y中的相應(yīng)個(gè)數(shù)的值代替,在此不羅列。
[0040]關(guān)于將將所述測(cè)試參數(shù)的一部分用隨機(jī)數(shù)代替舉例如下:測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù)時(shí)的測(cè)試參數(shù)包括兩個(gè),分別為X和Y,測(cè)試參數(shù)X包括[a,b,c,d]四個(gè)數(shù)值,測(cè)試參數(shù)Y包括[e,f,g,h]四個(gè)數(shù)值,那么,可以對(duì)測(cè)試參數(shù)中的一個(gè)、兩個(gè)、三個(gè)或者四個(gè)數(shù)值進(jìn)行隨機(jī)變換,得到隨機(jī)產(chǎn)生的數(shù)值所替換的新的測(cè)試參數(shù),如隨機(jī)產(chǎn)生的新的測(cè)試參數(shù)為[I,m, η, ο]。
[0041]在本發(fā)明實(shí)施例中,在執(zhí)行漏洞測(cè)試后,可對(duì)測(cè)試參數(shù)進(jìn)行變換組合,生成新的測(cè)試參數(shù)繼續(xù)對(duì)軟件進(jìn)行測(cè)試,直到達(dá)到最大測(cè)試次數(shù),和現(xiàn)有技術(shù)的漏洞測(cè)試方式相比,其測(cè)試參數(shù)可以自動(dòng)生成,可以更為全面的對(duì)軟件進(jìn)行測(cè)試,測(cè)試方便的同時(shí),也可提高測(cè)試效率。
[0042]實(shí)施例二:
[0043]圖2示出了本發(fā)明第二實(shí)施例提供的軟件測(cè)試方法和流程示意圖,詳述如下:
[0044]在步驟S201中,設(shè)置最大測(cè)試次數(shù)和/或設(shè)置無(wú)效參數(shù)最大執(zhí)行次數(shù)。
[0045]具體的,所述最大測(cè)試次數(shù),是指本發(fā)明實(shí)施例中執(zhí)行漏洞測(cè)試次數(shù)的最大值。所述無(wú)效參數(shù),是指將測(cè)試參數(shù)經(jīng)過(guò)測(cè)試用例的執(zhí)行條件的漏洞測(cè)試操作后,其輸出結(jié)果與預(yù)期結(jié)果相符,沒(méi)有出現(xiàn)異常的那些測(cè)試參數(shù)。無(wú)效參數(shù)的最大執(zhí)行次數(shù),其設(shè)定的值一般比最大執(zhí)行次數(shù)的值小。
[0046]在步驟S202中,接收測(cè)試用例和測(cè)試參數(shù)。
[0047]在步驟S203中,使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試。
[0048]在步驟S204中,判斷測(cè)試次數(shù)是否大于預(yù)設(shè)的最大測(cè)試次數(shù)。
[0049]步驟S202-S204與實(shí)施例一所述的步驟S101-S103相同,在此不作重復(fù)贅述。
[0050]在步驟S205中,如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),獲取執(zhí)行漏洞測(cè)試時(shí)未出現(xiàn)異常的測(cè)試參數(shù)集合。
[0051]具體的,在漏洞測(cè)試過(guò)程中,對(duì)于輸入的測(cè)試參數(shù),在完成測(cè)試用例中制定的執(zhí)行條件后,有可能得到的不是預(yù)期的結(jié)果,對(duì)于執(zhí)行測(cè)試用例中的執(zhí)行條件得到不符合預(yù)期結(jié)果的測(cè)試參數(shù),我們稱(chēng)之為出現(xiàn)異常的測(cè)試參數(shù),對(duì)應(yīng)的,對(duì)于那些執(zhí)行測(cè)試用例的執(zhí)行條件符合預(yù)期結(jié)果的測(cè)試參數(shù),我們稱(chēng)之為未出現(xiàn)異常的測(cè)試參數(shù)。
[0052]預(yù)期結(jié)果和執(zhí)行條件以及輸入的測(cè)試參數(shù),在步驟S202由用戶(hù)輸入或者制定。
[0053]在步驟S206中,將所述未出現(xiàn)異常的測(cè)試參數(shù)集合中的各測(cè)試參數(shù)的執(zhí)行次數(shù)與預(yù)設(shè)的無(wú)效參數(shù)最大執(zhí)行次數(shù)相比較,過(guò)濾掉所述未出現(xiàn)異常的測(cè)試參數(shù)集合中超過(guò)預(yù)設(shè)的無(wú)效參數(shù)最大執(zhí)行次數(shù)的測(cè)試參數(shù)。
[0054]由于在步驟S201中設(shè)置了無(wú)效參數(shù)最大執(zhí)行次數(shù),將未出現(xiàn)異常的測(cè)試參數(shù)的執(zhí)行次數(shù)與所述無(wú)效參數(shù)最大執(zhí)行次數(shù)比較,若大于所述無(wú)效參數(shù)最大執(zhí)行次數(shù),由于其未發(fā)現(xiàn)軟件漏洞,可對(duì)其進(jìn)行過(guò)濾處理。
[0055]如果未出現(xiàn)異常的參數(shù)的執(zhí)行次數(shù)小于所述無(wú)效參數(shù)最大執(zhí)行次數(shù),則對(duì)所述未出現(xiàn)異常的測(cè)試參數(shù)的執(zhí)行次數(shù)加一。
[0056]在步驟S207中,將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù),并將所述新的測(cè)試參數(shù)返回步驟S203。
[0057]具體的,將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù),所述新的測(cè)試參數(shù)可以包括以下一種或多種:
[0058]將所述未出現(xiàn)異常的測(cè)試參數(shù)集合中未超過(guò)預(yù)設(shè)的無(wú)效參數(shù)最大執(zhí)行次數(shù)的測(cè)試參數(shù)集合D ;
[0059]發(fā)現(xiàn)異常的參數(shù)集合B;
[0060]將所述測(cè)試參數(shù)集合D和測(cè)試參數(shù)集合B的測(cè)試參數(shù)截?cái)嗪筮M(jìn)行隨機(jī)組合得到的新的測(cè)試參數(shù);
[0061]和/或?qū)⑺鰷y(cè)試參數(shù)集合D和測(cè)試參數(shù)集合B的測(cè)試參數(shù)的一部分用隨機(jī)數(shù)代替,得到新的測(cè)試參數(shù)。
[0062]在步驟S208中,如果所述測(cè)試次數(shù)大于所述最大測(cè)試次數(shù),記錄測(cè)試結(jié)果并輸出測(cè)試報(bào)告。
[0063]在超過(guò)設(shè)置的最大測(cè)試測(cè)試次數(shù)后,表明當(dāng)前測(cè)試完成,將記錄的測(cè)試結(jié)果輸出,得到測(cè)試報(bào)告。
[0064]為便于理解本實(shí)施例所述方案,現(xiàn)對(duì)照?qǐng)D3進(jìn)一步說(shuō)明如下:
[0065]在301中,設(shè)定測(cè)試數(shù)據(jù),所述測(cè)試數(shù)據(jù)包括原始測(cè)試參數(shù)集合A、無(wú)效參數(shù)最大執(zhí)行次數(shù)和執(zhí)行最大輪數(shù)。
[0066]在302中,接收測(cè)試用例。所述測(cè)試用例為對(duì)系統(tǒng)進(jìn)行測(cè)試所選定的與測(cè)試參數(shù)相對(duì)應(yīng)的測(cè)試用例。
[0067]在303中,在所述待測(cè)試的系統(tǒng)上加載所述測(cè)試參數(shù),執(zhí)行所述測(cè)試用例。
[0068]在304中,判斷是否達(dá)到最大執(zhí)行次數(shù),如果是則轉(zhuǎn)到步驟S305,否則轉(zhuǎn)至306。
[0069]在305中,輸出測(cè)試報(bào)告,所述測(cè)試報(bào)告包括是否發(fā)現(xiàn)異常和引起異常的測(cè)試參數(shù)及異常的結(jié)果等。
[0070]在306中,對(duì)所述測(cè)試參數(shù)進(jìn)行分類(lèi),得到發(fā)現(xiàn)異常的測(cè)試參數(shù)集合B和未發(fā)現(xiàn)異常的測(cè)試參數(shù)集合C。
[0071 ] 在307中,對(duì)所述未發(fā)現(xiàn)異常的測(cè)試參數(shù)集合C的執(zhí)行次數(shù)進(jìn)行比較,過(guò)濾掉超過(guò)最大無(wú)效執(zhí)行次數(shù)的測(cè)試參數(shù),得到集合D。
[0072]在308中,合并發(fā)現(xiàn)異常的測(cè)試參數(shù)集合B和未發(fā)現(xiàn)異常的測(cè)試參數(shù)中參數(shù)集合D,所述參數(shù)集合D已過(guò)濾掉超過(guò)最大無(wú)效執(zhí)行次數(shù)的測(cè)試參數(shù),由參數(shù)集合B和參數(shù)集合D合并得到測(cè)試參數(shù)集合E。
[0073]在309中,對(duì)集合E的測(cè)試參數(shù)截?cái)啵嗷ルS機(jī)組合得到集合El。
[0074]在310中,對(duì)集合E中的測(cè)試參數(shù)的部分值替換為隨機(jī)值得到集合E2。
[0075]在311中,由測(cè)試參數(shù)集合E、E1、E2得到新的測(cè)試參數(shù)集合F,并返回303中加載新的測(cè)試參數(shù)集合F。
[0076]本發(fā)明實(shí)施例中,在接收測(cè)試用例和測(cè)試參數(shù)后,使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試,然后對(duì)測(cè)試參數(shù)進(jìn)行變換組合后重新進(jìn)行測(cè)試,直到測(cè)試的次數(shù)達(dá)到預(yù)設(shè)的最大測(cè)試次數(shù)。由于其能夠?qū)斎氲臏y(cè)試參數(shù)進(jìn)行變換組合,可以自動(dòng)生成新的測(cè)試參數(shù),自動(dòng)進(jìn)行多次的漏洞測(cè)試,從而有效的解決現(xiàn)有技術(shù)設(shè)置好測(cè)試參數(shù)后無(wú)法發(fā)現(xiàn)測(cè)試參數(shù)范圍外的漏洞的問(wèn)題,不需要人工進(jìn)行測(cè)試參數(shù)的增加,能夠提高測(cè)試效率和測(cè)試的便利性。而設(shè)置最大測(cè)試次數(shù),可以避免系統(tǒng)作過(guò)多重復(fù)測(cè)試操作,節(jié)省系統(tǒng)資源。在測(cè)試后對(duì)測(cè)試參數(shù)分析,過(guò)濾掉部分未出現(xiàn)異常的測(cè)試參數(shù),能夠?qū)y(cè)試參數(shù)進(jìn)行更好的優(yōu)化,進(jìn)一步提高測(cè)試效率。
[0077]實(shí)施例三:
[0078]圖3示出了本發(fā)明第三實(shí)施提供了軟件測(cè)試的裝置的結(jié)構(gòu)框圖,詳細(xì)描述如下:
[0079]本發(fā)明實(shí)施例所述的軟件測(cè)試裝置,包括接收單元401、漏洞測(cè)試的執(zhí)行單元402、判斷單元403和測(cè)試參數(shù)變換單元404,其中
[0080]所述接收單元401,用于接收測(cè)試用例和測(cè)試參數(shù);
[0081]漏洞測(cè)試的執(zhí)行單元402,用于使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試;
[0082]判斷單元403,用于判斷測(cè)試次數(shù)是否大于預(yù)設(shè)的最大測(cè)試次數(shù);
[0083]測(cè)試參數(shù)變換單元404,用于如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù)。
[0084]為有效的控制測(cè)試次數(shù)和得到測(cè)試結(jié)果,所述裝置還可包括:記錄輸出單元405,用于如果所述測(cè)試次數(shù)大于所述最大測(cè)試次數(shù),記錄測(cè)試結(jié)果并輸出測(cè)試報(bào)告。
[0085]為對(duì)測(cè)試參數(shù)進(jìn)行有效的篩選和優(yōu)化,所述裝置還包括:
[0086]設(shè)置單元406,用于設(shè)置最大測(cè)試次數(shù)和/或設(shè)置無(wú)效參數(shù)最大執(zhí)行次數(shù)。
[0087]測(cè)試參數(shù)獲取單元407,用于獲取執(zhí)行漏洞測(cè)試時(shí)未出現(xiàn)異常的測(cè)試參數(shù)集合;
[0088]測(cè)試參數(shù)過(guò)濾單元408,用于將所述未出現(xiàn)異常的測(cè)試參數(shù)集合中的各測(cè)試參數(shù)的執(zhí)行次數(shù)與預(yù)設(shè)的無(wú)效參數(shù)最大執(zhí)行次數(shù)相比較,過(guò)濾掉所述未出現(xiàn)異常的測(cè)試參數(shù)集合中超過(guò)預(yù)設(shè)的無(wú)效參數(shù)最大執(zhí)行次數(shù)的測(cè)試參數(shù)。
[0089]在本發(fā)明實(shí)施例中,所述測(cè)試參數(shù)變換單元404具體為:將所述測(cè)試參數(shù)隨機(jī)組合和/或?qū)⑺鰷y(cè)試參數(shù)用隨機(jī)數(shù)代替,得到新的測(cè)試參數(shù),并發(fā)送至漏洞測(cè)試的執(zhí)行單元402重新進(jìn)行測(cè)試。
[0090]本發(fā)明實(shí)施例所述的軟件測(cè)試裝置與實(shí)施例2所述的軟件測(cè)試方法相對(duì)應(yīng),在此不作重復(fù)贅述。
[0091]值得注意的是,上述裝置和系統(tǒng)實(shí)施例中,所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱(chēng)也只是為了便于相互區(qū)分,并不用于限制本發(fā)明的保護(hù)范圍。
[0092]另外,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述各實(shí)施例方法中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,相應(yīng)的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,所述的存儲(chǔ)介質(zhì),如R0M/RAM、磁盤(pán)或光盤(pán)等。
[0093]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種軟件測(cè)試方法,其特征在于,所述方法包括: a)、接收測(cè)試用例和測(cè)試參數(shù); b)、使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試; c)、判斷測(cè)試次數(shù)是否大于預(yù)設(shè)的最大測(cè)試次數(shù); d)、如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù),并返回步驟b)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 如果所述測(cè)試次數(shù)大于所述最大測(cè)試次數(shù),記錄測(cè)試結(jié)果并輸出測(cè)試報(bào)告。
3.根據(jù)權(quán)利要求1-2任一項(xiàng)所述的方法,其特征在于,所述步驟如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù)具體為: 將所述測(cè)試參數(shù)截?cái)嗪筮M(jìn)行隨機(jī)組合,和/或?qū)⑺鰷y(cè)試參數(shù)的一部分用隨機(jī)數(shù)代替,得到新的測(cè)試參數(shù)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù)步驟前,還包括: 獲取執(zhí)行漏洞測(cè)試時(shí) 未出現(xiàn)異常的測(cè)試參數(shù)集合; 將所述未出現(xiàn)異常的測(cè)試參數(shù)集合中的各測(cè)試參數(shù)的執(zhí)行次數(shù)與預(yù)設(shè)的無(wú)效參數(shù)最大執(zhí)行次數(shù)相比較,過(guò)濾掉所述未出現(xiàn)異常的測(cè)試參數(shù)集合中超過(guò)預(yù)設(shè)的無(wú)效參數(shù)最大執(zhí)行次數(shù)的測(cè)試參數(shù)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述步驟如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù)具體為: 得到未出現(xiàn)異常的測(cè)試參數(shù)集合中未超過(guò)預(yù)設(shè)的無(wú)效參數(shù)最大次數(shù)的測(cè)試參數(shù)集合A和發(fā)現(xiàn)異常的參數(shù)集合B,將參數(shù)集合A和參數(shù)集合B合并得到合并參數(shù)集,對(duì)合并參數(shù)集截?cái)嗪筮M(jìn)行隨機(jī)組合和/或?qū)喜?shù)集的參數(shù)的一部分進(jìn)行隨機(jī)數(shù)據(jù)代替,得到新的測(cè)試參數(shù)集合。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述方法還包括: 設(shè)置最大測(cè)試次數(shù)或設(shè)置無(wú)效參數(shù)最大執(zhí)行次數(shù)。
7.一種軟件測(cè)試裝置,其特征在于,所述裝置包括: 接收單元,用于接收測(cè)試用例和測(cè)試參數(shù); 漏洞測(cè)試的執(zhí)行單元,用于使用所述測(cè)試用例加載所述測(cè)試參數(shù)執(zhí)行漏洞測(cè)試; 判斷單元,用于判斷測(cè)試次數(shù)是否大于預(yù)設(shè)的最大測(cè)試次數(shù); 測(cè)試參數(shù)變換單元,用于如果所述測(cè)試次數(shù)小于或等于所述最大測(cè)試次數(shù),將所述測(cè)試參數(shù)進(jìn)行變換組合得到新的測(cè)試參數(shù)。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 記錄輸出單元,用于如果所述測(cè)試次數(shù)大于所述最大測(cè)試次數(shù),記錄測(cè)試結(jié)果并輸出測(cè)試報(bào)告。
9.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 測(cè)試參數(shù)獲取單元,用于獲取執(zhí)行漏洞測(cè)試時(shí)未出現(xiàn)異常的測(cè)試參數(shù)集合; 測(cè)試參數(shù)過(guò)濾單元,用于將所述未出現(xiàn)異常的測(cè)試參數(shù)集合中的各測(cè)試參數(shù)的執(zhí)行次數(shù)與預(yù)設(shè)的無(wú)效參數(shù)最大執(zhí)行次數(shù)相比較,過(guò)濾掉所述未出現(xiàn)異常的測(cè)試參數(shù)集合中超過(guò)預(yù)設(shè)的無(wú)效參數(shù)最大執(zhí)行次數(shù)的測(cè)試參數(shù)。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括: 設(shè)置單元,用于設(shè)置最 大測(cè)試次數(shù)或設(shè)置無(wú)效參數(shù)最大執(zhí)行次數(shù)。
【文檔編號(hào)】G06F11/36GK104077215SQ201310101079
【公開(kāi)日】2014年10月1日 申請(qǐng)日期:2013年3月26日 優(yōu)先權(quán)日:2013年3月26日
【發(fā)明者】謝俊 申請(qǐng)人:騰訊科技(深圳)有限公司