生成測(cè)試數(shù)據(jù)的方法及設(shè)備的制造方法
【專利摘要】本申請(qǐng)?zhí)峁┮环N生成測(cè)試數(shù)據(jù)的方法及設(shè)備,本申請(qǐng)通過(guò)在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),解決異常數(shù)據(jù)生成的通用性問(wèn)題,生成的異常數(shù)據(jù)針對(duì)性強(qiáng),測(cè)試結(jié)果準(zhǔn)確。另外,在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯不相匹配時(shí),根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元,基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),使異常數(shù)據(jù)的生成方式具有可擴(kuò)展性。
【專利說(shuō)明】
生成測(cè)試數(shù)據(jù)的方法及設(shè)備
技術(shù)領(lǐng)域
[0001]本申請(qǐng)涉及通信及計(jì)算機(jī)領(lǐng)域,尤其涉及一種生成測(cè)試數(shù)據(jù)的方法及設(shè)備。
【背景技術(shù)】
[0002]測(cè)試數(shù)據(jù)中一類導(dǎo)致程序異常的數(shù)據(jù)通常被稱為異常數(shù)據(jù),異常數(shù)據(jù)多為受測(cè)應(yīng)用(程序)內(nèi)部沒(méi)有對(duì)異常情況進(jìn)行處理引起。
[0003]應(yīng)用測(cè)試可以分為白盒測(cè)試、黑盒測(cè)試,其中白盒測(cè)試需要關(guān)注受測(cè)應(yīng)用內(nèi)部實(shí)現(xiàn)細(xì)節(jié),而黑盒測(cè)試將受測(cè)應(yīng)用當(dāng)成一個(gè)黑盒,通過(guò)輸入來(lái)判斷程序行為是否符合預(yù)期。黑盒測(cè)試相較于白盒測(cè)試,成本更低,因此被廣泛使用。但是,要保證黑盒測(cè)試的全面性,輸入的測(cè)試數(shù)據(jù)尤其是異常數(shù)據(jù)起到了至關(guān)重要的作用,直接關(guān)系到測(cè)試是否全面。目前關(guān)于測(cè)試數(shù)據(jù)有兩種思路:一是數(shù)據(jù)構(gòu)造,主要針對(duì)測(cè)試數(shù)據(jù)缺乏或者難構(gòu)造的問(wèn)題;二是數(shù)據(jù)管理,主要提升自動(dòng)化測(cè)試效率。針對(duì)數(shù)據(jù)構(gòu)造,目前通用的思路是基于業(yè)務(wù)場(chǎng)景進(jìn)行構(gòu)造,為了驗(yàn)證程序功能是否實(shí)現(xiàn)。但是在實(shí)際應(yīng)用中,經(jīng)常會(huì)出現(xiàn)各種異常情況,如網(wǎng)絡(luò)異常、數(shù)據(jù)傳輸異常、用戶輸入數(shù)據(jù)異常等導(dǎo)致程序崩潰。
[0004]關(guān)于異常數(shù)據(jù),目前通用的解決方法是Fuzz測(cè)試,即模糊測(cè)試。Fuzz測(cè)試的目的是驗(yàn)證受測(cè)應(yīng)用接收處理異常(畸形)數(shù)據(jù)是否發(fā)生異常,F(xiàn)uzz測(cè)試過(guò)程中會(huì)隨機(jī)或按照數(shù)據(jù)模板生成異常(畸形)數(shù)據(jù),測(cè)試受測(cè)應(yīng)用的容錯(cuò)性、穩(wěn)定性和安全性。主要有兩種思路:一種是隨機(jī)Fuzz,另一種是根據(jù)結(jié)構(gòu)進(jìn)行Fuzz。其中,隨機(jī)Fuzz不需要了解內(nèi)部邏輯,實(shí)現(xiàn)簡(jiǎn)單,缺點(diǎn)是Fuzz的數(shù)據(jù)不符合程序的輸入格式而直接在入口處被過(guò)濾掉;根據(jù)結(jié)構(gòu)進(jìn)行Fuzz,需要了解輸入數(shù)據(jù)的格式,然后進(jìn)行有針對(duì)性的Fuzz,因此Fuzz的數(shù)據(jù)不會(huì)因?yàn)楦袷讲粚?duì)而被過(guò)濾掉,但是缺點(diǎn)就是不夠通用。
【發(fā)明內(nèi)容】
[0005]本申請(qǐng)的目的是提供一種生成測(cè)試數(shù)據(jù)的方法及設(shè)備,能夠解決異常數(shù)據(jù)生成的通用性問(wèn)題。
[0006]有鑒于此,本申請(qǐng)?zhí)峁┥蓽y(cè)試數(shù)據(jù)的方法,包括:
[0007]在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),
[0008]基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0009]進(jìn)一步的,所述異常數(shù)據(jù)單元根據(jù)多個(gè)受測(cè)應(yīng)用的同一問(wèn)題業(yè)務(wù)邏輯生成。
[0010]進(jìn)一步的,所述異常數(shù)據(jù)單元包括一個(gè)或多個(gè)預(yù)設(shè)的基礎(chǔ)類型及其賦值。
[0011]進(jìn)一步的,在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),包括:
[0012]在受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯與異常數(shù)據(jù)單元庫(kù)中的多個(gè)問(wèn)題業(yè)務(wù)邏輯的組合相匹配時(shí),
[0013]基于該多個(gè)問(wèn)題業(yè)務(wù)邏輯所分別對(duì)應(yīng)的異常數(shù)據(jù)單元組合生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0014]進(jìn)一步的,基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)包括:
[0015]在配置文件中配置異常數(shù)據(jù)單元對(duì)應(yīng)的名稱;
[0016]加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0017]進(jìn)一步的,所述方法還包括:
[0018]在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯不相匹配時(shí),
[0019]根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元;
[0020]基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0021]進(jìn)一步的,基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)包括:
[0022]在配置文件中配置新的異常數(shù)據(jù)單元對(duì)應(yīng)的名稱;
[0023]加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0024]進(jìn)一步的,根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元之后,所述方法還包括:
[0025]將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)。
[0026]進(jìn)一步的,在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí)之前,所述方法還包括:
[0027]獲取引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù);
[0028]根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,并將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單兀庫(kù)中。
[0029]本申請(qǐng)另一方面還提供一種用于生成測(cè)試數(shù)據(jù)的設(shè)備,包括:
[0030]第一裝置,用于在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0031]進(jìn)一步的,所述異常數(shù)據(jù)單元根據(jù)多個(gè)受測(cè)應(yīng)用的同一問(wèn)題業(yè)務(wù)邏輯生成。
[0032]進(jìn)一步的,所述異常數(shù)據(jù)單元包括一個(gè)或多個(gè)預(yù)設(shè)的基礎(chǔ)類型及其賦值。
[0033]進(jìn)一步的,所述第一裝置,用于在受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯與異常數(shù)據(jù)單元庫(kù)中的多個(gè)問(wèn)題業(yè)務(wù)邏輯的組合相匹配時(shí),基于該多個(gè)問(wèn)題業(yè)務(wù)邏輯所分別對(duì)應(yīng)的異常數(shù)據(jù)單元組合生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0034]進(jìn)一步的,所述第一裝置,用于在配置文件中配置異常數(shù)據(jù)單元對(duì)應(yīng)的名稱,加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0035]進(jìn)一步的,所述設(shè)備還包括第二裝置,用于在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯不相匹配時(shí),根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元,及基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0036]進(jìn)一步的,所述第二裝置,用于在配置文件中配置新的異常數(shù)據(jù)單元對(duì)應(yīng)的名稱,加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。
[0037]進(jìn)一步的,所述設(shè)備還包括第三裝置,用于將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)。
[0038]進(jìn)一步的,所述設(shè)備還包括第四裝置,用于獲取引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù),根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,并將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)中。
[0039]與現(xiàn)有技術(shù)相比,本申請(qǐng)通過(guò)在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),解決異常數(shù)據(jù)生成的通用性問(wèn)題,生成的異常數(shù)據(jù)針對(duì)性強(qiáng),測(cè)試結(jié)果準(zhǔn)確。
[0040]進(jìn)一步的,所述異常數(shù)據(jù)單元根據(jù)多個(gè)受測(cè)應(yīng)用的同一問(wèn)題業(yè)務(wù)邏輯生成,可進(jìn)一步提高生成同類業(yè)務(wù)的受測(cè)應(yīng)用的異常數(shù)據(jù)的通用性。
[0041]進(jìn)一步的,所述異常數(shù)據(jù)單元包括一個(gè)或多個(gè)預(yù)設(shè)的基礎(chǔ)類型及其賦值,可進(jìn)一步提高基于異常數(shù)據(jù)單元生成受測(cè)應(yīng)用的異常數(shù)據(jù)的通用性。
[0042]進(jìn)一步的,在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯不相匹配時(shí),根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元,基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),使異常數(shù)據(jù)的生成方式具有可擴(kuò)展性。
[0043]進(jìn)一步的,通過(guò)將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù),能夠不斷豐富異常數(shù)據(jù)單元庫(kù)的內(nèi)容,增加生成的異常數(shù)據(jù)的通用性。
[0044]進(jìn)一步的,通過(guò)獲取引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù),根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)中,實(shí)現(xiàn)在線上監(jiān)控受測(cè)應(yīng)用的異常情況,以豐富所述異常數(shù)據(jù)單元庫(kù)中的內(nèi)容,使后續(xù)組合成的異常數(shù)據(jù)更具通用性。
【附圖說(shuō)明】
[0045]通過(guò)閱讀參照以下附圖所作的對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本申請(qǐng)的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
[0046]圖1示出根據(jù)本申請(qǐng)一個(gè)方面的生成測(cè)試數(shù)據(jù)的方法流程圖;
[0047]圖2示出本申請(qǐng)一優(yōu)選實(shí)施例的生成測(cè)試數(shù)據(jù)的方法流程圖;
[0048]圖3示出本申請(qǐng)另一優(yōu)選實(shí)施例的生成測(cè)試數(shù)據(jù)的方法流程圖;
[0049]圖4示出本申請(qǐng)?jiān)僖粌?yōu)選實(shí)施例的生成測(cè)試數(shù)據(jù)的方法流程圖;
[0050]圖5示出根據(jù)本申請(qǐng)另一個(gè)方面的用于生成測(cè)試數(shù)據(jù)的設(shè)備示意圖;
[0051]圖6示出本申請(qǐng)一優(yōu)選實(shí)施例的用于生成測(cè)試數(shù)據(jù)的設(shè)備示意圖;
[0052]圖7示出本申請(qǐng)另一優(yōu)選實(shí)施例的用于生成測(cè)試數(shù)據(jù)的設(shè)備示意圖;
[0053]圖8示出本申請(qǐng)?jiān)僖粌?yōu)選實(shí)施例的用于生成測(cè)試數(shù)據(jù)的設(shè)備示意圖;
[0054]附圖中相同或相似的附圖標(biāo)記代表相同或相似的部件。
【具體實(shí)施方式】
[0055]在本申請(qǐng)一個(gè)典型的配置中,終端、服務(wù)網(wǎng)絡(luò)的設(shè)備和可信方均包括一個(gè)或多個(gè)處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
[0056]內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(ROM)或閃存(flash RAM)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。
[0057]計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來(lái)實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、其他類型的隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲(chǔ)器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁盤存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問(wèn)的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括非暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號(hào)和載波。
[0058]圖1示出根據(jù)本申請(qǐng)一個(gè)方面的生成測(cè)試數(shù)據(jù)的方法流程圖,結(jié)合圖1,本申請(qǐng)?zhí)岢鲆环N生成測(cè)試數(shù)據(jù)的方法,所述方法包括:
[0059]步驟SI,判斷受測(cè)應(yīng)用是否與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配,若是,則轉(zhuǎn)到步驟S2 ;
[0060]步驟S2,基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。在此,所述問(wèn)題業(yè)務(wù)邏輯是受測(cè)應(yīng)用的業(yè)務(wù)邏輯中容易出問(wèn)題的業(yè)務(wù)邏輯,例如,受測(cè)應(yīng)用為一搜索引擎時(shí),搜索引擎會(huì)對(duì)網(wǎng)頁(yè)進(jìn)行分析,其中會(huì)有一個(gè)類似分詞的程序,其功能是對(duì)標(biāo)題進(jìn)行分詞,一個(gè)詞語(yǔ)一般情況下就幾個(gè)字,但是如果標(biāo)題中有url,則長(zhǎng)度會(huì)很長(zhǎng),超出默認(rèn)值,如果對(duì)url進(jìn)行分詞會(huì)導(dǎo)致搜索引擎崩潰,這一對(duì)url進(jìn)行分詞會(huì)導(dǎo)致搜索引擎崩潰即為所述問(wèn)題業(yè)務(wù)邏輯,針對(duì)這一問(wèn)題業(yè)務(wù)邏輯對(duì)應(yīng)生成異常數(shù)據(jù)單元存于數(shù)據(jù)單元庫(kù)中,基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)即帶有url的標(biāo)題的異常數(shù)據(jù),用于對(duì)類似分詞的程序進(jìn)行穩(wěn)定性測(cè)試。又如,受測(cè)應(yīng)用為一個(gè)對(duì)整數(shù)進(jìn)行除法運(yùn)算的程序,如果分母的取值為0,則除法運(yùn)算異常會(huì)導(dǎo)致程序崩潰,這一分母的取值為O的除法運(yùn)算會(huì)導(dǎo)致程序崩潰即為所述問(wèn)題業(yè)務(wù)邏輯,針對(duì)這一問(wèn)題業(yè)務(wù)邏輯對(duì)應(yīng)生成異常數(shù)據(jù)單元,基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)即分母的取值為O的異常數(shù)據(jù),后續(xù)可將生成的異常數(shù)據(jù)輸入到受測(cè)應(yīng)用中,然后根據(jù)受測(cè)應(yīng)用的輸出來(lái)驗(yàn)證當(dāng)前受測(cè)應(yīng)用的穩(wěn)定性。本實(shí)施例中由于將各類問(wèn)題業(yè)務(wù)邏輯預(yù)設(shè)于異常數(shù)據(jù)單元庫(kù),受測(cè)應(yīng)用在異常數(shù)據(jù)單元庫(kù)找到與其匹配的問(wèn)題業(yè)務(wù)邏輯,即可基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),能夠解決異常數(shù)據(jù)生成的通用性問(wèn)題,生成的異常數(shù)據(jù)針對(duì)性強(qiáng),測(cè)試結(jié)果準(zhǔn)確。
[0061]本申請(qǐng)一優(yōu)選實(shí)施例中,所述異常數(shù)據(jù)單元根據(jù)多個(gè)受測(cè)應(yīng)用的同一問(wèn)題業(yè)務(wù)邏輯生成。在此,所述異常數(shù)據(jù)單元可以是同一問(wèn)題業(yè)務(wù)邏輯的多個(gè)受測(cè)應(yīng)用的一些最小單元的內(nèi)置規(guī)則,這些最小單元的內(nèi)置規(guī)則可以用來(lái)生成完整的異常數(shù)據(jù),從而使后續(xù)根據(jù)異常數(shù)據(jù)單元生成的異常數(shù)據(jù)更具有通用性,以使用到該同類業(yè)務(wù)的受測(cè)應(yīng)用的異常數(shù)據(jù)測(cè)試上。在此,根據(jù)不同的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的異常數(shù)據(jù)單元,后續(xù)具有同一問(wèn)題業(yè)務(wù)邏輯的受測(cè)應(yīng)用可使用對(duì)應(yīng)的異常數(shù)據(jù)單元生成異常數(shù)據(jù),從而進(jìn)一步提高生成同類業(yè)務(wù)的受測(cè)應(yīng)用的異常數(shù)據(jù)的通用性。本領(lǐng)域技術(shù)人員應(yīng)能理解上述異常數(shù)據(jù)單元的描述僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的異常數(shù)據(jù)單元如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0062]本申請(qǐng)一優(yōu)選實(shí)施例中,所述異常數(shù)據(jù)單元包括一個(gè)或多個(gè)預(yù)設(shè)的基礎(chǔ)類型及其賦值,從而進(jìn)一步提高基于異常數(shù)據(jù)單元生成受測(cè)應(yīng)用的異常數(shù)據(jù)的通用性。在此,所述基礎(chǔ)類型可以包括整數(shù)類型、字符串類型和小數(shù)類型等等,所述賦值按照測(cè)試?yán)碚撝械葍r(jià)類劃分、邊界值等選取的有代表性的取值,例如,整數(shù)取值有很多,在32位系統(tǒng)中,整數(shù)的取值范圍為:-2147483647 ?2147483647,但是可以取 1、_1、0、-2147483647,2147483647 分別代表正整數(shù)、負(fù)整數(shù)、0、最大數(shù)、最小數(shù)等,所述字符串類型的賦值包括各種編碼值;實(shí)際應(yīng)用中,所述共同的基礎(chǔ)類型及其賦值可存儲(chǔ)于一基礎(chǔ)庫(kù)中。例如,在網(wǎng)頁(yè)分析類業(yè)務(wù)的受測(cè)應(yīng)用中,受測(cè)應(yīng)用會(huì)對(duì)網(wǎng)頁(yè)中的標(biāo)題(title)或正文進(jìn)行分詞處理,標(biāo)題或正文可以理解成基礎(chǔ)庫(kù)中的字符串類型,可以結(jié)合受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯和所述基礎(chǔ)類型及其賦值構(gòu)造生成超長(zhǎng)詞、特殊分隔符等異常數(shù)據(jù)單元。本領(lǐng)域技術(shù)人員應(yīng)能理解上述異常數(shù)據(jù)單元的描述僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的異常數(shù)據(jù)單元如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0063]本申請(qǐng)一優(yōu)選實(shí)施例中,步驟SI包括:
[0064]在受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯與異常數(shù)據(jù)單元庫(kù)中的多個(gè)問(wèn)題業(yè)務(wù)邏輯的組合相匹配時(shí),
[0065]步驟S2包括:
[0066]基于該多個(gè)問(wèn)題業(yè)務(wù)邏輯所分別對(duì)應(yīng)的異常數(shù)據(jù)單元組合生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。在此,通過(guò)將異常數(shù)據(jù)單元組合生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),可以進(jìn)一步提高生成的異常數(shù)據(jù)的通用性和準(zhǔn)確性。
[0067]本申請(qǐng)一較佳的實(shí)施例中,步驟S2,所述基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)包括:
[0068]在配置文件中配置異常數(shù)據(jù)單元對(duì)應(yīng)的名稱;
[0069]加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。本領(lǐng)域技術(shù)人員應(yīng)能理解上述生成異常數(shù)據(jù)的描述僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的生成異常數(shù)據(jù)的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0070]圖2示出本申請(qǐng)一優(yōu)選實(shí)施例的生成測(cè)試數(shù)據(jù)的方法流程圖。結(jié)合圖2,所述方法還包括:
[0071]步驟SI,判斷受測(cè)應(yīng)用是否與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配,若是,則轉(zhuǎn)到步驟S2,若否則轉(zhuǎn)到步驟S3 ;
[0072]步驟S2,基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù);
[0073]步驟S3,根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元;
[0074]步驟S4,基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。在此,如果受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯無(wú)法與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯匹配上時(shí),可以根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元,并基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),從而使異常數(shù)據(jù)的生成方式具有可擴(kuò)展性。
[0075]圖3示出本申請(qǐng)一優(yōu)選實(shí)施例的生成測(cè)試數(shù)據(jù)的方法流程圖。結(jié)合圖3,步驟S4包括:
[0076]步驟S41,在配置文件中配置新的異常數(shù)據(jù)單元對(duì)應(yīng)的名稱;
[0077]步驟S42,加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。本領(lǐng)域技術(shù)人員應(yīng)能理解上述生成異常數(shù)據(jù)的描述僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的生成異常數(shù)據(jù)的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0078]本申請(qǐng)一較佳的實(shí)施例中,步驟S3之后,所述方法還包括:
[0079]將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù),從而不斷豐富異常數(shù)據(jù)單元庫(kù)的內(nèi)容,增加生成的異常數(shù)據(jù)的通用性。一實(shí)施例中,可以先判斷新的異常數(shù)據(jù)單元是否通用,如果通用,再將新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)。相應(yīng)的,后續(xù)重復(fù)執(zhí)行步驟S2時(shí),下一受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯與新加入異常數(shù)據(jù)單元庫(kù)的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),可以將該問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元組合成完整的異常數(shù)據(jù),后續(xù)可將所述完整的異常數(shù)據(jù)輸入到當(dāng)前受測(cè)應(yīng)用中,然后根據(jù)當(dāng)前受測(cè)應(yīng)用的輸出來(lái)驗(yàn)證當(dāng)前受測(cè)應(yīng)用的穩(wěn)定性。
[0080]圖4示出本申請(qǐng)一優(yōu)選實(shí)施例的生成測(cè)試數(shù)據(jù)的方法流程圖。結(jié)合圖4,步驟SI之前,所述方法還包括:
[0081]步驟S01,獲取引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù);
[0082]步驟S02,根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元;
[0083]步驟S03,將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)中。在異常數(shù)據(jù)單元的積累方面,除了前述實(shí)施例提到的所述異常數(shù)據(jù)單元根據(jù)多個(gè)受測(cè)應(yīng)用的同一問(wèn)題業(yè)務(wù)邏輯生成,或前述另一實(shí)施例提到的將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)的方式外,還可以通過(guò)步驟SOl?S03的方式,在線上監(jiān)控受測(cè)應(yīng)用的異常情況,并獲取引起該受測(cè)應(yīng)用異常的異常數(shù)據(jù),根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,并將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)中,以豐富所述異常數(shù)據(jù)單元庫(kù)中的內(nèi)容,使后續(xù)組合成的異常數(shù)據(jù)更具通用性。本領(lǐng)域技術(shù)人員應(yīng)能理解上述異常數(shù)據(jù)單元的描述僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的異常數(shù)據(jù)單元如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0084]根據(jù)本申請(qǐng)的另一方面,本申請(qǐng)還提供一種用于生成測(cè)試數(shù)據(jù)的設(shè)備,圖5示出根據(jù)本申請(qǐng)另一個(gè)方面的用于生成測(cè)試數(shù)據(jù)的設(shè)備示意圖,結(jié)合圖5,所述用于生成測(cè)試數(shù)據(jù)的設(shè)備100包括:
[0085]第一裝置1,用于在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)200中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。在此,所述問(wèn)題業(yè)務(wù)邏輯是受測(cè)應(yīng)用的業(yè)務(wù)邏輯中容易出問(wèn)題的業(yè)務(wù)邏輯,例如,受測(cè)應(yīng)用為一搜索引擎時(shí),搜索引擎會(huì)對(duì)網(wǎng)頁(yè)進(jìn)行分析,其中會(huì)有一個(gè)類似分詞的程序,其功能是對(duì)標(biāo)題進(jìn)行分詞,一個(gè)詞語(yǔ)一般情況下就幾個(gè)字,但是如果標(biāo)題中有url,則長(zhǎng)度會(huì)很長(zhǎng),超出默認(rèn)值,如果對(duì)url進(jìn)行分詞會(huì)導(dǎo)致搜索引擎崩潰,這一對(duì)url進(jìn)行分詞會(huì)導(dǎo)致搜索引擎崩潰即為所述問(wèn)題業(yè)務(wù)邏輯,針對(duì)這一問(wèn)題業(yè)務(wù)邏輯對(duì)應(yīng)生成異常數(shù)據(jù)單元存于數(shù)據(jù)單元庫(kù)中,基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)即帶有url的標(biāo)題的異常數(shù)據(jù),用于對(duì)類似分詞的程序進(jìn)行穩(wěn)定性測(cè)試。又如,受測(cè)應(yīng)用為一個(gè)對(duì)整數(shù)進(jìn)行除法運(yùn)算的程序,如果分母的取值為O,則除法運(yùn)算異常會(huì)導(dǎo)致程序崩潰,這一分母的取值為O的除法運(yùn)算會(huì)導(dǎo)致程序崩潰即為所述問(wèn)題業(yè)務(wù)邏輯,針對(duì)這一問(wèn)題業(yè)務(wù)邏輯對(duì)應(yīng)生成異常數(shù)據(jù)單元,基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)即分母的取值為O的異常數(shù)據(jù),后續(xù)可將異常數(shù)據(jù)輸入到受測(cè)應(yīng)用中,然后根據(jù)受測(cè)應(yīng)用的輸出來(lái)驗(yàn)證當(dāng)前受測(cè)應(yīng)用的穩(wěn)定性。本實(shí)施例中由于將各類問(wèn)題業(yè)務(wù)邏輯預(yù)設(shè)于異常數(shù)據(jù)單元庫(kù),受測(cè)應(yīng)用在異常數(shù)據(jù)單元庫(kù)找到與其匹配的問(wèn)題業(yè)務(wù)邏輯,即可基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),提高異常數(shù)據(jù)生成的通用性問(wèn)題,生成的異常數(shù)據(jù)針對(duì)性強(qiáng),測(cè)試結(jié)果準(zhǔn)確。
[0086]本申請(qǐng)一優(yōu)選實(shí)施例中,所述異常數(shù)據(jù)單元根據(jù)多個(gè)受測(cè)應(yīng)用的同一問(wèn)題業(yè)務(wù)邏輯生成。在此,所述異常數(shù)據(jù)單元可以是同一問(wèn)題業(yè)務(wù)邏輯的多個(gè)受測(cè)應(yīng)用的一些最小單元的內(nèi)置規(guī)則,這些最小單元的內(nèi)置規(guī)則可以用來(lái)生成完整的異常數(shù)據(jù),從而使后續(xù)根據(jù)異常數(shù)據(jù)單元生成的異常數(shù)據(jù)更具有通用性,以使用到該同類業(yè)務(wù)的受測(cè)應(yīng)用的異常數(shù)據(jù)測(cè)試上。在此,根據(jù)不同的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的異常數(shù)據(jù)單元,后續(xù)具有同一問(wèn)題業(yè)務(wù)邏輯的受測(cè)應(yīng)用可使用對(duì)應(yīng)的異常數(shù)據(jù)單元生成異常數(shù)據(jù),從而提高生成同類業(yè)務(wù)的受測(cè)應(yīng)用的異常數(shù)據(jù)的通用性。本領(lǐng)域技術(shù)人員應(yīng)能理解上述異常數(shù)據(jù)單元的描述僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的異常數(shù)據(jù)單元如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0087]本申請(qǐng)一優(yōu)選實(shí)施例中,所述異常數(shù)據(jù)單元包括一個(gè)或多個(gè)預(yù)設(shè)的基礎(chǔ)類型及其賦值。在此,所述基礎(chǔ)類型可以包括整數(shù)類型、字符串類型和小數(shù)類型等等,所述賦值按照測(cè)試?yán)碚撝械葍r(jià)類劃分、邊界值等選取的有代表性的取值,例如,整數(shù)取值有很多,在32位系統(tǒng)中,整數(shù)的取值范圍為:-2147483647?2147483647,但是可以取1、-1、
0、_2147483647,2147483647分別代表正整數(shù)、負(fù)整數(shù)、0、最大數(shù)、最小數(shù)等,所述字符串類型的賦值包括各種編碼值;實(shí)際應(yīng)用中,所述共同的基礎(chǔ)類型及其賦值可存儲(chǔ)于一基礎(chǔ)庫(kù)中。例如,在網(wǎng)頁(yè)分析類業(yè)務(wù)的受測(cè)應(yīng)用中,受測(cè)應(yīng)用會(huì)對(duì)網(wǎng)頁(yè)中的標(biāo)題(title)或正文進(jìn)行分詞處理,標(biāo)題或正文可以理解成基礎(chǔ)庫(kù)中的字符串類型,可以結(jié)合受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯和所述基礎(chǔ)類型及其賦值構(gòu)造生成超長(zhǎng)詞、特殊分隔符等異常數(shù)據(jù)單元。本領(lǐng)域技術(shù)人員應(yīng)能理解上述異常數(shù)據(jù)單元的描述僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的異常數(shù)據(jù)單元如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0088]本申請(qǐng)一優(yōu)選實(shí)施例中,所述第一裝置I,用于在受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯與異常數(shù)據(jù)單元庫(kù)200中的多個(gè)問(wèn)題業(yè)務(wù)邏輯的組合相匹配時(shí),基于該多個(gè)問(wèn)題業(yè)務(wù)邏輯所分別對(duì)應(yīng)的異常數(shù)據(jù)單元組合生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。在此,通過(guò)將異常數(shù)據(jù)單元組合生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),可以進(jìn)一步提高生成的異常數(shù)據(jù)的通用性和準(zhǔn)確性。
[0089]本申請(qǐng)一較佳的實(shí)施例中,所述第一裝置1,用于在配置文件中配置異常數(shù)據(jù)單元對(duì)應(yīng)的名稱,加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。本領(lǐng)域技術(shù)人員應(yīng)能理解上述生成異常數(shù)據(jù)的描述僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的生成異常數(shù)據(jù)的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0090]圖6示出本申請(qǐng)一優(yōu)選實(shí)施例的用于生成測(cè)試數(shù)據(jù)的設(shè)備示意圖。結(jié)合圖6,所述設(shè)備100還包括第二裝置2,用于在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)200中的問(wèn)題業(yè)務(wù)邏輯不相匹配時(shí),根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元,及基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。在此,如果受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯無(wú)法與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯匹配上時(shí),可以根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元,并基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),從而使異常數(shù)據(jù)的生成方式具有可擴(kuò)展性。
[0091]本申請(qǐng)一優(yōu)選實(shí)施例中所述第二裝置2,用于在配置文件中配置新的異常數(shù)據(jù)單元對(duì)應(yīng)的名稱,加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。本領(lǐng)域技術(shù)人員應(yīng)能理解上述生成異常數(shù)據(jù)的描述僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的生成異常數(shù)據(jù)的方式如可適用于本申請(qǐng),也應(yīng)包含在本申請(qǐng)保護(hù)范圍以內(nèi),并在此以引用方式包含于此。
[0092]圖7示出本申請(qǐng)一優(yōu)選實(shí)施例的用于生成測(cè)試數(shù)據(jù)的設(shè)備示意圖。結(jié)合圖7,所述設(shè)備100還包括第三裝置3,用于將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)200,從而不斷豐富異常數(shù)據(jù)單元庫(kù)的內(nèi)容,增加生成的異常數(shù)據(jù)的通用性。一實(shí)施例中,可以先判斷新的異常數(shù)據(jù)單元是否通用,如果通用,再將新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)。相應(yīng)的,后續(xù)重復(fù)執(zhí)行步驟S2時(shí),下一受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯與新加入異常數(shù)據(jù)單元庫(kù)的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),可以將該問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元組合成完整的異常數(shù)據(jù),后續(xù)可將所述完整的異常數(shù)據(jù)輸入到當(dāng)前受測(cè)應(yīng)用中,然后根據(jù)當(dāng)前受測(cè)應(yīng)用的輸出來(lái)驗(yàn)證當(dāng)前受測(cè)應(yīng)用的穩(wěn)定性。
[0093]圖8示出本申請(qǐng)一優(yōu)選實(shí)施例的用于生成測(cè)試數(shù)據(jù)的設(shè)備示意圖。結(jié)合圖8,所述設(shè)備100還包括第四裝置4,用于獲取引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù),根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,并將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)200中。
[0094]在一具體的應(yīng)用實(shí)施例中,可預(yù)設(shè)一個(gè)基礎(chǔ)庫(kù)存儲(chǔ)各種預(yù)設(shè)的基礎(chǔ)類型及其賦值,再預(yù)設(shè)一個(gè)異常數(shù)據(jù)單元庫(kù)存儲(chǔ)各種問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元,所述異常數(shù)據(jù)單元包括一個(gè)或多個(gè)從所述基礎(chǔ)庫(kù)中選擇的基礎(chǔ)類型及其賦值,在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的一個(gè)或多個(gè)異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù);另外,在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯不相匹配時(shí),根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元,基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù),不斷豐富異常數(shù)據(jù)單元庫(kù)的內(nèi)容;此外,獲取引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù),根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)中,進(jìn)一步豐富異常數(shù)據(jù)單元庫(kù)的內(nèi)容,從而提高生成的異常數(shù)據(jù)的通用性。
[0095]綜上所述,本申請(qǐng)通過(guò)在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),解決異常數(shù)據(jù)生成的通用性問(wèn)題,生成的異常數(shù)據(jù)針對(duì)性強(qiáng),測(cè)試結(jié)果準(zhǔn)確。
[0096]進(jìn)一步的,所述異常數(shù)據(jù)單元根據(jù)多個(gè)受測(cè)應(yīng)用的同一問(wèn)題業(yè)務(wù)邏輯生成,進(jìn)一步提高生成同類業(yè)務(wù)的受測(cè)應(yīng)用的異常數(shù)據(jù)的通用性。
[0097]進(jìn)一步的,所述異常數(shù)據(jù)單元包括一個(gè)或多個(gè)預(yù)設(shè)的基礎(chǔ)類型及其賦值,進(jìn)一步提高基于異常數(shù)據(jù)單元生成受測(cè)應(yīng)用的異常數(shù)據(jù)的通用性。
[0098]進(jìn)一步的,在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯不相匹配時(shí),根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元,基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),使異常數(shù)據(jù)的生成方式具有可擴(kuò)展性。
[0099]進(jìn)一步的,通過(guò)將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù),能夠不斷豐富異常數(shù)據(jù)單元庫(kù)的內(nèi)容,增加生成的異常數(shù)據(jù)的通用性。
[0100]進(jìn)一步的,通過(guò)獲取引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù),根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)中,實(shí)現(xiàn)在線上監(jiān)控受測(cè)應(yīng)用的異常情況,并獲取引起該受測(cè)應(yīng)用異常的異常數(shù)據(jù),根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,并將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)中,以豐富所述異常數(shù)據(jù)單元庫(kù)中的內(nèi)容,使后續(xù)組合成的異常數(shù)據(jù)更具通用性。
[0101]顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本申請(qǐng)進(jìn)行各種改動(dòng)和變型而不脫離本申請(qǐng)的精神和范圍。這樣,倘若本申請(qǐng)的這些修改和變型屬于本申請(qǐng)權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本申請(qǐng)也意圖包含這些改動(dòng)和變型在內(nèi)。
[0102]需要注意的是,本申請(qǐng)可在軟件和/或軟件與硬件的組合體中被實(shí)施,例如,可采用專用集成電路(ASIC)、通用目的計(jì)算機(jī)或任何其他類似硬件設(shè)備來(lái)實(shí)現(xiàn)。在一個(gè)實(shí)施例中,本申請(qǐng)的軟件程序可以通過(guò)處理器執(zhí)行以實(shí)現(xiàn)上文所述步驟或功能。同樣地,本申請(qǐng)的軟件程序(包括相關(guān)的數(shù)據(jù)結(jié)構(gòu))可以被存儲(chǔ)到計(jì)算機(jī)可讀記錄介質(zhì)中,例如,RAM存儲(chǔ)器,磁或光驅(qū)動(dòng)器或軟磁盤及類似設(shè)備。另外,本申請(qǐng)的一些步驟或功能可采用硬件來(lái)實(shí)現(xiàn),例如,作為與處理器配合從而執(zhí)行各個(gè)步驟或功能的電路。
[0103]另外,本申請(qǐng)的一部分可被應(yīng)用為計(jì)算機(jī)程序產(chǎn)品,例如計(jì)算機(jī)程序指令,當(dāng)其被計(jì)算機(jī)執(zhí)行時(shí),通過(guò)該計(jì)算機(jī)的操作,可以調(diào)用或提供根據(jù)本申請(qǐng)的方法和/或技術(shù)方案。而調(diào)用本申請(qǐng)的方法的程序指令,可能被存儲(chǔ)在固定的或可移動(dòng)的記錄介質(zhì)中,和/或通過(guò)廣播或其他信號(hào)承載媒體中的數(shù)據(jù)流而被傳輸,和/或被存儲(chǔ)在根據(jù)所述程序指令運(yùn)行的計(jì)算機(jī)設(shè)備的工作存儲(chǔ)器中。在此,根據(jù)本申請(qǐng)的一個(gè)實(shí)施例包括一個(gè)裝置,該裝置包括用于存儲(chǔ)計(jì)算機(jī)程序指令的存儲(chǔ)器和用于執(zhí)行程序指令的處理器,其中,當(dāng)該計(jì)算機(jī)程序指令被該處理器執(zhí)行時(shí),觸發(fā)該裝置運(yùn)行基于前述根據(jù)本申請(qǐng)的多個(gè)實(shí)施例的方法和/或技術(shù)方案。
[0104] 對(duì)于本領(lǐng)域技術(shù)人員而言,顯然本申請(qǐng)不限于上述示范性實(shí)施例的細(xì)節(jié),而且在不背離本申請(qǐng)的精神或基本特征的情況下,能夠以其他的具體形式實(shí)現(xiàn)本申請(qǐng)。因此,無(wú)論從哪一點(diǎn)來(lái)看,均應(yīng)將實(shí)施例看作是示范性的,而且是非限制性的,本申請(qǐng)的范圍由所附權(quán)利要求而不是上述說(shuō)明限定,因此旨在將落在權(quán)利要求的等同要件的含義和范圍內(nèi)的所有變化涵括在本申請(qǐng)內(nèi)。不應(yīng)將權(quán)利要求中的任何附圖標(biāo)記視為限制所涉及的權(quán)利要求。此夕卜,顯然“包括” 一詞不排除其他單元或步驟,單數(shù)不排除復(fù)數(shù)。裝置權(quán)利要求中陳述的多個(gè)單元或裝置也可以由一個(gè)單元或裝置通過(guò)軟件或者硬件來(lái)實(shí)現(xiàn)。第一,第二等詞語(yǔ)用來(lái)表示名稱,而并不表示任何特定的順序。
【主權(quán)項(xiàng)】
1.一種生成測(cè)試數(shù)據(jù)的方法,其中,包括: 在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí), 基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。2.如權(quán)利要求1所述的方法,其中,所述異常數(shù)據(jù)單元根據(jù)多個(gè)受測(cè)應(yīng)用的同一問(wèn)題業(yè)務(wù)邏輯生成。3.如權(quán)利要求1或2所述的方法,其中,所述異常數(shù)據(jù)單元包括一個(gè)或多個(gè)預(yù)設(shè)的基礎(chǔ)類型及其賦值。4.如權(quán)利要求1至3任一項(xiàng)所述的方法,其中,在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù),包括: 在受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯與異常數(shù)據(jù)單元庫(kù)中的多個(gè)問(wèn)題業(yè)務(wù)邏輯的組合相匹配時(shí), 基于該多個(gè)問(wèn)題業(yè)務(wù)邏輯所分別對(duì)應(yīng)的異常數(shù)據(jù)單元組合生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。5.如權(quán)利要I至4任一項(xiàng)所述的方法,其中,基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)包括: 在配置文件中配置異常數(shù)據(jù)單元對(duì)應(yīng)的名稱; 加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。6.如權(quán)利要求1所述的方法,其中,所述方法還包括: 在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯不相匹配時(shí), 根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元; 基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。7.如權(quán)利要6所述的方法,其中,基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)包括: 在配置文件中配置新的異常數(shù)據(jù)單元對(duì)應(yīng)的名稱; 加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。8.如權(quán)利要6所述的方法,其中,根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元之后,所述方法還包括: 將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)。9.如權(quán)利要I至8任一項(xiàng)所述的方法,其中,在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí)之前,所述方法還包括: 獲取引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù); 根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,并將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)中。10.一種用于生成測(cè)試數(shù)據(jù)的設(shè)備,其中,包括: 第一裝置,用于在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯相匹配時(shí),基于所述問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。11.如權(quán)利要求10所述的設(shè)備,其中,所述異常數(shù)據(jù)單元根據(jù)多個(gè)受測(cè)應(yīng)用的同一問(wèn)題業(yè)務(wù)邏輯生成。12.如權(quán)利要求10或11所述的設(shè)備,其中,所述異常數(shù)據(jù)單元包括一個(gè)或多個(gè)預(yù)設(shè)的基礎(chǔ)類型及其賦值。13.如權(quán)利要求10至12任一項(xiàng)所述的設(shè)備,其中,所述第一裝置,用于在受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯與異常數(shù)據(jù)單元庫(kù)中的多個(gè)問(wèn)題業(yè)務(wù)邏輯的組合相匹配時(shí),基于該多個(gè)問(wèn)題業(yè)務(wù)邏輯所分別對(duì)應(yīng)的異常數(shù)據(jù)單元組合生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。14.如權(quán)利要求10至13任一項(xiàng)所述的設(shè)備,其中,所述第一裝置,用于在配置文件中配置異常數(shù)據(jù)單元對(duì)應(yīng)的名稱,加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。15.如權(quán)利要10所述的設(shè)備,其中,所述設(shè)備還包括第二裝置,用于在受測(cè)應(yīng)用與異常數(shù)據(jù)單元庫(kù)中的問(wèn)題業(yè)務(wù)邏輯不相匹配時(shí),根據(jù)受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯生成對(duì)應(yīng)的新的異常數(shù)據(jù)單元,及基于所述新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。16.如權(quán)利要15所述的設(shè)備,其中,所述第二裝置,用于在配置文件中配置新的異常數(shù)據(jù)單元對(duì)應(yīng)的名稱,加載所述配置文件以將所述名稱映射到對(duì)應(yīng)的新的異常數(shù)據(jù)單元生成作用于所述受測(cè)應(yīng)用的測(cè)試數(shù)據(jù)。17.如權(quán)利要15所述的設(shè)備,其中,所述設(shè)備還包括第三裝置,用于將受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)。18.如權(quán)利要10至17任一項(xiàng)所述的設(shè)備,其中,所述設(shè)備還包括第四裝置,用于獲取引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù),根據(jù)引起受測(cè)應(yīng)用運(yùn)行異常的測(cè)試數(shù)據(jù)生成該受測(cè)應(yīng)用的問(wèn)題業(yè)務(wù)邏輯所對(duì)應(yīng)的新的異常數(shù)據(jù)單元,并將該問(wèn)題業(yè)務(wù)邏輯及對(duì)應(yīng)的新的異常數(shù)據(jù)單元加入所述異常數(shù)據(jù)單元庫(kù)中。
【文檔編號(hào)】G06F11/36GK105868095SQ201510032511
【公開(kāi)日】2016年8月17日
【申請(qǐng)日】2015年1月22日
【發(fā)明人】劉晶, 潘敏
【申請(qǐng)人】阿里巴巴集團(tuán)控股有限公司