两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種軟件測試方法和裝置制造方法

文檔序號:6502067閱讀:234來源:國知局
一種軟件測試方法和裝置制造方法
【專利摘要】本發(fā)明實(shí)施例公開了一種軟件測試方法和裝置,以方法的實(shí)現(xiàn)為例,包括:向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文,使所述指定待測部分處理所述測試報文并發(fā)送給目標(biāo)設(shè)備;所述待測網(wǎng)絡(luò)程序中的指定待測部分采用逆向分析確定;接收所述來自所述目標(biāo)設(shè)備返回的執(zhí)行結(jié)果,并據(jù)所述執(zhí)行結(jié)果確定測試結(jié)果。采用逆向分析確定待測網(wǎng)絡(luò)程序中包含的待測部分,測試報文則是發(fā)送給指定待測部分,因此可以靈活的使用多線程或者進(jìn)程集發(fā)送待測報文,從而實(shí)現(xiàn)高并發(fā),實(shí)現(xiàn)大規(guī)模網(wǎng)絡(luò)軟件在線測試,提高測試效率。由于測試報文發(fā)送給指定的待測部分,為避開數(shù)據(jù)檢查提供了條件,因此為深度測試的徹底執(zhí)行提供條件。
【專利說明】一種軟件測試方法和裝置

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,特別涉及一種軟件測試方法和裝置。

【背景技術(shù)】
[0002]目前軟件的測試方案是采用hook(鉤子)掛接網(wǎng)絡(luò)軟件發(fā)包模塊的方式來進(jìn)行測試,如圖1所示:
[0003]測試者通過在被測試網(wǎng)絡(luò)軟件中增加注入模塊,來進(jìn)行報文構(gòu)造和發(fā)送,并觀察報文發(fā)送后的結(jié)果以及對其他對等實(shí)體或服務(wù)端的影響。具體流程如下:
[0004]注入模塊構(gòu)造明文的報文并發(fā)送給檢查模塊;
[0005]檢查模塊執(zhí)行數(shù)據(jù)檢查,并按照預(yù)定規(guī)則丟棄其中的某些報文,然后發(fā)送給加密模塊;
[0006]加密模塊對明文的報文進(jìn)行加密,得到密文的報文并發(fā)送給發(fā)包模塊;
[0007]發(fā)包模塊將接收到的密文發(fā)送給報文的目標(biāo)設(shè)備,例如服務(wù)端或者其他客戶端;
[0008]目標(biāo)設(shè)備對報文內(nèi)容進(jìn)行處理返回密文的報文給收包模塊;
[0009]收包模塊接收密文的報文后,轉(zhuǎn)發(fā)給解密模塊;
[0010]解密模塊對接收的密文的報文進(jìn)行解密,并得到明文的報文,發(fā)送給檢查模塊;
[0011]檢查模塊執(zhí)行數(shù)據(jù)檢查,并按照預(yù)定規(guī)則丟棄其中的某些報文,然后發(fā)送給注入模塊;
[0012]注入模塊將接收到的明文發(fā)送給功能模塊。
[0013]現(xiàn)有技術(shù)方案通過注入模塊可以任意構(gòu)造通信報文進(jìn)行報文測試,并觀察對服務(wù)端或其他客戶端的影響,可以達(dá)到網(wǎng)絡(luò)軟件測試的目的。
[0014]采用以上方案,存在如下技術(shù)問題:由于受測試設(shè)備的硬件條件限制,一臺測試設(shè)備能同時運(yùn)行的被測網(wǎng)絡(luò)軟件個數(shù)是有限的,無法模擬大規(guī)模(超大規(guī)模、海量)網(wǎng)絡(luò)軟件在線測試,致使測試效率低。特別是在網(wǎng)絡(luò)游戲領(lǐng)域,此問題更為明顯,由于網(wǎng)絡(luò)游戲都是一機(jī)一號,通過hook游戲進(jìn)程注入模塊發(fā)包的方式不能模擬大規(guī)模玩家在線。另外,通過圖2所示流程可以看出,網(wǎng)絡(luò)軟件在對報文進(jìn)行加密之前或者解密之后,會對報文進(jìn)行檢查,如果檢查不通過,則數(shù)據(jù)包被丟棄,這樣必然存在一些報文無法到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也無法到達(dá)功能模塊,導(dǎo)致達(dá)不到深度測試的效果,不能測試目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng),并使測試工作無法徹底執(zhí)行。


【發(fā)明內(nèi)容】

[0015]本發(fā)明實(shí)施例提供了一種軟件測試方法和裝置,用于實(shí)現(xiàn)大規(guī)模網(wǎng)絡(luò)軟件在線測試,提高測試效率,并為深度測試的徹底執(zhí)行提供條件。
[0016]一種軟件測試方法,特征在于,包括:
[0017]向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文,使所述指定待測部分處理所述測試報文并發(fā)送給目標(biāo)設(shè)備;所述待測網(wǎng)絡(luò)程序中的指定待測部分采用逆向分析確定;
[0018]接收所述來自所述目標(biāo)設(shè)備返回的執(zhí)行結(jié)果,并據(jù)所述執(zhí)行結(jié)果確定測試結(jié)果。
[0019]一種軟件測裝置,包括:
[0020]存儲單元,用于存儲待測網(wǎng)絡(luò)程序;
[0021]發(fā)送單元,用于向所述存儲單元存儲的待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文,使所述指定待測部分處理所述測試報文并發(fā)送給目標(biāo)設(shè)備;所述待測網(wǎng)絡(luò)程序中的指定待測部分采用逆向分析確定;
[0022]接收單元,用于接收所述來自所述目標(biāo)設(shè)備返回的執(zhí)行結(jié)果,并據(jù)所述執(zhí)行結(jié)果確定測試結(jié)果。
[0023]從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):采用逆向分析確定待測網(wǎng)絡(luò)程序中包含的待測部分,測試報文則是發(fā)送給指定待測部分,因此可以靈活的使用多線程或者進(jìn)程集發(fā)送待測報文,從而實(shí)現(xiàn)高并發(fā),實(shí)現(xiàn)大規(guī)模網(wǎng)絡(luò)軟件在線測試,提高測試效率。由于測試報文發(fā)送給指定的待測部分,為避開數(shù)據(jù)檢查提供了條件,因此為深度測試的徹底執(zhí)行提供條件。

【專利附圖】

【附圖說明】
[0024]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域的普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0025]圖1為現(xiàn)有技術(shù)目前軟件的測試方案結(jié)構(gòu)示意圖;
[0026]圖2為本發(fā)明實(shí)施例方法流程示意圖;
[0027]圖3為本發(fā)明實(shí)施例逆向工程流程示意圖;
[0028]圖4為本發(fā)明實(shí)施例測試數(shù)據(jù)流向示意圖;
[0029]圖5為本發(fā)明實(shí)施例方法流程示意圖;
[0030]圖6為本發(fā)明實(shí)施例裝置結(jié)構(gòu)示意圖;
[0031]圖7為本發(fā)明實(shí)施另一裝置結(jié)構(gòu)示意圖。

【具體實(shí)施方式】
[0032]為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明作進(jìn)一步地詳細(xì)描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部份實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0033]一種軟件測試方法,如圖2所示,包括:
[0034]201:向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文,使上述指定待測部分處理上述測試報文并發(fā)送給目標(biāo)設(shè)備;上述待測網(wǎng)絡(luò)程序中的指定待測部分采用逆向分析確定;
[0035]由于發(fā)送測試報文是發(fā)送給待測網(wǎng)絡(luò)程序中的指定待測部分的,待測網(wǎng)絡(luò)程序由很多部分組成,那么待測網(wǎng)絡(luò)程序中的指定待測部分的數(shù)量則可以有很多,那么測試報文則可以同時發(fā)送給各個待測部分,實(shí)現(xiàn)并發(fā)測試。
[0036]本發(fā)明實(shí)施例提供了兩種向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文的可選方式,具體如下:
[0037]—、上述向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文包括:
[0038]采用與指定處理流程對應(yīng)的專用腳本,向待測網(wǎng)絡(luò)程序中的指定處理流程發(fā)送測試報文;上述待測網(wǎng)絡(luò)程序中的指定處理流程采用逆向分析得到。
[0039]更具體地,上述處理流程包括:認(rèn)證信息處理流程、認(rèn)證信息認(rèn)證流程、加解密算法協(xié)商流程、數(shù)據(jù)報文傳遞流程中的至少一項。
[0040]更具體地,上述待測網(wǎng)絡(luò)程序中的指定處理流程包括:采用逆向分析上述待測網(wǎng)絡(luò)程序,得到上述待測網(wǎng)絡(luò)程序的處理流程,并由得到的處理流程編寫的脫機(jī)程序,且不包含數(shù)據(jù)檢查功能。
[0041]由于不包含數(shù)據(jù)檢查功能,所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。
[0042]以上方案,可以解決測試效率低和無法深度測試的問題。理由如下:
[0043]因?yàn)槊摍C(jī)程序的代碼是根據(jù)原有待測網(wǎng)絡(luò)程序的流程自寫的,因此可以靈活的使用多線程或者進(jìn)程集來解決高并發(fā)的問題,從而模擬大規(guī)模的網(wǎng)絡(luò)軟件客戶端在線。因此可以解決測試效率低的問題,提高測試效率。
[0044]因?yàn)槊摍C(jī)程序的代碼是根據(jù)原有待測網(wǎng)絡(luò)程序的流程自寫的,所以可以刪除檢測相關(guān)的代碼,所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。解決了深度測試不能徹底進(jìn)行的問題。
[0045]二、上述向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文包括:
[0046]向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文,使上述動態(tài)鏈接庫調(diào)用上述測試報文指向的上述待測網(wǎng)絡(luò)程序的功能函數(shù),且不包含數(shù)據(jù)檢查功能函數(shù)。
[0047]由于不包含數(shù)據(jù)檢查功能,所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。
[0048]更具體地,上述動態(tài)鏈接庫采用逆向分析上述待測網(wǎng)絡(luò)程序并確定各功能函數(shù)后,掛接到上述待測網(wǎng)絡(luò)程序中。
[0049]更具體地,向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文包括:
[0050]采用脫機(jī)程序模擬一個或一個以上的客戶端,向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文。
[0051]以上方案,可以解決測試效率低和無法深度測試的問題。理由如下:
[0052]因?yàn)椴迦肓?DLL,DLL是根據(jù)原有待測網(wǎng)絡(luò)程序的流程掛接的,可以調(diào)用待測網(wǎng)絡(luò)程序的功能函數(shù),因此可以靈活的使用多線程或者進(jìn)程集來解決高并發(fā)的問題,從而模擬大規(guī)模的網(wǎng)絡(luò)軟件客戶端在線。因此可以解決測試效率低的問題,提高測試效率。
[0053]因?yàn)椴迦肓?DLL,DLL是根據(jù)原有待測網(wǎng)絡(luò)程序的流程掛接的,可以調(diào)用待測網(wǎng)絡(luò)程序的功能函數(shù),所以不調(diào)用檢測相關(guān)的功能函數(shù),所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。解決了深度測試不能徹底進(jìn)行的問題。
[0054]后續(xù)實(shí)施例將就以上兩種方案進(jìn)行更詳細(xì)的舉例說明。
[0055]202:接收上述來自上述目標(biāo)設(shè)備返回的執(zhí)行結(jié)果,并據(jù)上述執(zhí)行結(jié)果確定測試結(jié)果O
[0056]上述執(zhí)行結(jié)果是目標(biāo)設(shè)備對測試報文的反饋,如何從執(zhí)行結(jié)果中確定測試結(jié)果,即從執(zhí)行結(jié)果中確定是否出現(xiàn)異常以及出現(xiàn)了何種異常的過程,可以采用成熟的規(guī)則和算法來實(shí)現(xiàn),本發(fā)明實(shí)施例不予限定。
[0057]采用逆向分析確定待測網(wǎng)絡(luò)程序中包含的待測部分,測試報文則是發(fā)送給指定待測部分,因此可以靈活的使用多線程或者進(jìn)程集發(fā)送待測報文,從而實(shí)現(xiàn)高并發(fā),實(shí)現(xiàn)大規(guī)模網(wǎng)絡(luò)軟件在線測試,提高測試效率。由于測試報文發(fā)送給指定的待測部分,為避開數(shù)據(jù)檢查提供了條件,因此為深度測試的徹底執(zhí)行提供條件。
[0058]以下實(shí)施例將就前述兩種向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文的可選方式分別舉例說明。
[0059]第一種,采用逆向工程,重寫脫機(jī)程序,采用腳本來發(fā)送測試報文,具體請參閱圖3和圖4 ;其中圖4是對待測網(wǎng)絡(luò)程序采用逆向工程的準(zhǔn)備流程,具體包括:
[0060]首先對待測網(wǎng)絡(luò)程序進(jìn)行逆向分析,從而還原其各種功能流程,例如:認(rèn)證信息處理流程、認(rèn)證信息認(rèn)證流程、加解密算法協(xié)商流程、數(shù)據(jù)報文傳遞流程等。需要說明的是:由于待測網(wǎng)絡(luò)程序的不同包含的功能流程是可以完全不一樣的,因此以上功能流程的舉例不應(yīng)理解為對本發(fā)明實(shí)施例的限定。
[0061]廣義上的逆向工程又叫反向工程,也就是通過事物結(jié)果反推其實(shí)現(xiàn)過程。在軟件領(lǐng)域,逆向工程是指通過逆向分析某軟件來還原其實(shí)現(xiàn)過程、實(shí)現(xiàn)代碼及分析文檔的總和。
[0062]然后,在掌握其各種功能流程的情況下,編寫流程文檔,并使用程序設(shè)計語言編寫脫機(jī)程序。
[0063]軟件的脫機(jī)是指經(jīng)過逆向分析后的網(wǎng)絡(luò)軟件,獲取其通信過程及算法,并用程序設(shè)計語言重新實(shí)現(xiàn)該軟件的網(wǎng)絡(luò)通信功能,并能模擬該軟件的通信過程。模擬該軟件通信過程的代碼生成的程序,稱為軟件脫機(jī)程序。
[0064]對于一個新的待測網(wǎng)絡(luò)程序,對其實(shí)施脫機(jī)測試的,腳本引擎則是創(chuàng)建待測報文的腳本,是為了自動化的需要,脫機(jī)程序可以支持腳本。
[0065]以上工作全部完成以后則可以交付測試,具體的測試流程,請參閱圖4,如下:
[0066]脫機(jī)程序包含了腳本,腳本由腳本引擎驅(qū)動,在圖4示意了 N個腳本,那么有N個與之對應(yīng)的功能流程,每個功能流程都有加密模塊、發(fā)包模塊、收包模塊、解密模塊,以腳本I的測試流程為例,具體如下:
[0067]腳本I按照腳本I的既定流程生成待測報文,并將待測報文發(fā)送給加密模塊。
[0068]加密模塊將收到的待測報文進(jìn)行加密得到密文的待測報文,然后將密文的待測報文發(fā)送給發(fā)包模塊。
[0069]發(fā)包模塊將接收到的密文的待測報文轉(zhuǎn)發(fā)給目標(biāo)設(shè)備,這里的目標(biāo)設(shè)備可以是服務(wù)器也可以是其他客戶端程序,對此本發(fā)明實(shí)施例不予限定。
[0070]目標(biāo)設(shè)備處理上述密文的待測報文以后,會反饋處理結(jié)果給收包模塊,該處理結(jié)果一般也是密文的處理結(jié)果.
[0071]收包模塊將受到的密文的處理結(jié)果發(fā)送給解密模塊,解密模塊對密文的處理結(jié)果進(jìn)行解密,得到明文的處理結(jié)果,并發(fā)送給腳本I。
[0072]腳本I收到明文的處理結(jié)果以后,就可以據(jù)此確定測試結(jié)果。
[0073]其他腳本的工作流程與腳本I的工作流程相同,不再一一贅述。
[0074]本發(fā)明實(shí)施例方案,請參閱圖4的執(zhí)行流程圖,其可以解決測試效率低和無法深度測試的問題。理由如下:
[0075]因?yàn)槊摍C(jī)程序的代碼是根據(jù)原有待測網(wǎng)絡(luò)程序的流程自寫的,因此可以靈活的使用多線程或者進(jìn)程集來解決高并發(fā)的問題,從而模擬大規(guī)模的網(wǎng)絡(luò)軟件客戶端在線。因此可以解決測試效率低的問題,提高測試效率。
[0076]因?yàn)槊摍C(jī)程序的代碼是根據(jù)原有待測網(wǎng)絡(luò)程序的流程自寫的,所以可以刪除檢測相關(guān)的代碼,所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。解決了深度測試不能徹底進(jìn)行的問題。
[0077]第二種,采用逆向工程,但是不重寫功能流程,而是在待測網(wǎng)絡(luò)軟件中掛接動態(tài)鏈接庫(Dynamic Link Library, DLL)。
[0078]該方案可以作為第一種方案的替換方案,該方案也需要要分析待測網(wǎng)絡(luò)軟件的認(rèn)證流程和報文傳遞流程等各種功能流程,但可以不重寫其實(shí)現(xiàn)過程,而是在目標(biāo)程序中掛接一個動態(tài)鏈接庫(DLL)。采用脫機(jī)程序模擬N個客戶端將參待測報文發(fā)送給注入在待測網(wǎng)絡(luò)軟件中的DLL,讓DLL調(diào)用待測網(wǎng)絡(luò)軟件的功能函數(shù)完成待測報文的組織。組織完成后,將組好的待測報文封包并傳遞給脫機(jī)程序,脫機(jī)程序再將數(shù)據(jù)包發(fā)往目標(biāo)設(shè)備,收包邏輯類似不再一一贅述。請參閱圖5所示,具體的流程包括:
[0079]首先是待測網(wǎng)絡(luò)軟件與目標(biāo)設(shè)備進(jìn)行加密和解密的初始化,即同步的過程,使雙方加密和解密能夠正常進(jìn)行。
[0080]501:脫機(jī)程序向待測網(wǎng)絡(luò)軟件的DLL發(fā)送明文的待測報文;
[0081]502:待測網(wǎng)絡(luò)軟件中的DLL調(diào)用與待測報文相關(guān)的功能函數(shù),并將明文的待測報文加密得到密文的待測報文;
[0082]503:待測網(wǎng)絡(luò)軟件將經(jīng)過上述功能函數(shù)處理的密文的待測報文發(fā)送給脫機(jī)程序;
[0083]504:脫機(jī)程序?qū)⑸鲜雒芪牡拇郎y報文發(fā)送給目標(biāo)設(shè)備;
[0084]上述目標(biāo)設(shè)備可以是服務(wù)器也可以是其他客戶端,對比本發(fā)明實(shí)施例不予限定。
[0085]505:目標(biāo)設(shè)備將密文的待測報文解密,還原為明文的待測報文;
[0086]506:目標(biāo)設(shè)備可以對待測報文進(jìn)行處理,并對處理結(jié)果進(jìn)行加密,得到密文的處理結(jié)果;
[0087]507:目標(biāo)設(shè)備將密文的處理結(jié)果發(fā)送給脫機(jī)程序;
[0088]508:脫機(jī)程序?qū)⒚芪牡奶幚斫Y(jié)果發(fā)送給待測網(wǎng)絡(luò)軟件的DLL ;
[0089]509:待測網(wǎng)絡(luò)軟件中的DLL調(diào)用相關(guān)的功能函數(shù),將上述密文的處理結(jié)果還原為明文的處理結(jié)果;
[0090]510:待測網(wǎng)絡(luò)軟件將明文的處理結(jié)果發(fā)送給脫機(jī)程序,脫機(jī)程序側(cè)可以據(jù)此確定測試結(jié)果。
[0091]本發(fā)明實(shí)施例方案,請參閱圖5的執(zhí)行流程圖,其可以解決測試效率低和無法深度測試的問題。理由如下:
[0092]因?yàn)椴迦肓?DLL,DLL是根據(jù)原有待測網(wǎng)絡(luò)程序的流程掛接的,可以調(diào)用待測網(wǎng)絡(luò)程序的功能函數(shù),因此可以靈活的使用多線程或者進(jìn)程集來解決高并發(fā)的問題,從而模擬大規(guī)模的網(wǎng)絡(luò)軟件客戶端在線。因此可以解決測試效率低的問題,提高測試效率。
[0093]因?yàn)椴迦肓?DLL,DLL是根據(jù)原有待測網(wǎng)絡(luò)程序的流程掛接的,可以調(diào)用待測網(wǎng)絡(luò)程序的功能函數(shù),所以不調(diào)用檢測相關(guān)的功能函數(shù),所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。解決了深度測試不能徹底進(jìn)行的問題。
[0094]本發(fā)明實(shí)施例還提供了一種軟件測裝置,如圖6所示,包括:
[0095]存儲單元601,用于存儲待測網(wǎng)絡(luò)程序;
[0096]發(fā)送單元602,用于向上述存儲單元601存儲的待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文,使上述指定待測部分處理上述測試報文并發(fā)送給目標(biāo)設(shè)備;上述待測網(wǎng)絡(luò)程序中的指定待測部分采用逆向分析確定;
[0097]接收單元603,用于接收上述來自上述目標(biāo)設(shè)備返回的執(zhí)行結(jié)果,并據(jù)上述執(zhí)行結(jié)果確定測試結(jié)果。
[0098]采用逆向分析確定待測網(wǎng)絡(luò)程序中包含的待測部分,測試報文則是發(fā)送給指定待測部分,因此可以靈活的使用多線程或者進(jìn)程集發(fā)送待測報文,從而實(shí)現(xiàn)高并發(fā),實(shí)現(xiàn)大規(guī)模網(wǎng)絡(luò)軟件在線測試,提高測試效率。由于測試報文發(fā)送給指定的待測部分,為避開數(shù)據(jù)檢查提供了條件,因此為深度測試的徹底執(zhí)行提供條件。
[0099]由于發(fā)送測試報文是發(fā)送給待測網(wǎng)絡(luò)程序中的指定待測部分的,待測網(wǎng)絡(luò)程序由很多部分組成,那么待測網(wǎng)絡(luò)程序中的指定待測部分的數(shù)量則可以有很多,那么測試報文則可以同時發(fā)送給各個待測部分,實(shí)現(xiàn)并發(fā)測試。
[0100]本發(fā)明實(shí)施例提供了兩種向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文的可選方式,具體如下:
[0101]可選地,上述發(fā)送單元602,具體用于采用與指定處理流程對應(yīng)的專用腳本,向待測網(wǎng)絡(luò)程序中的指定處理流程發(fā)送測試報文;上述待測網(wǎng)絡(luò)程序中的指定處理流程采用逆向分析得到。
[0102]可選地,上述發(fā)送單元602,具體發(fā)送的處理流程包括:認(rèn)證信息處理流程、認(rèn)證信息認(rèn)證流程、加解密算法協(xié)商流程、數(shù)據(jù)報文傳遞流程中的至少一項。
[0103]可選地,上述發(fā)送單元602,具體發(fā)送的上述待測網(wǎng)絡(luò)程序中的指定處理流程包括:采用逆向分析上述待測網(wǎng)絡(luò)程序,得到上述待測網(wǎng)絡(luò)程序的處理流程,并由得到的處理流程編寫的脫機(jī)程序,且不包含數(shù)據(jù)檢查功能。
[0104]由于不包含數(shù)據(jù)檢查功能,所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。
[0105]以上方案,可以解決測試效率低和無法深度測試的問題。理由如下:
[0106]因?yàn)槊摍C(jī)程序的代碼是根據(jù)原有待測網(wǎng)絡(luò)程序的流程自寫的,因此可以靈活的使用多線程或者進(jìn)程集來解決高并發(fā)的問題,從而模擬大規(guī)模的網(wǎng)絡(luò)軟件客戶端在線。因此可以解決測試效率低的問題,提高測試效率。
[0107]因?yàn)槊摍C(jī)程序的代碼是根據(jù)原有待測網(wǎng)絡(luò)程序的流程自寫的,所以可以刪除檢測相關(guān)的代碼,所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。解決了深度測試不能徹底進(jìn)行的問題。
[0108]可選地,上述發(fā)送單元602,具體用于向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文,使上述動態(tài)鏈接庫調(diào)用上述測試報文指向的上述待測網(wǎng)絡(luò)程序的功能函數(shù),且不包含數(shù)據(jù)檢查功能函數(shù)。
[0109]由于不包含數(shù)據(jù)檢查的功能函數(shù),所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。
[0110]可選地,上述發(fā)送單元602,具體發(fā)送的上述動態(tài)鏈接庫采用逆向分析上述待測網(wǎng)絡(luò)程序并確定各功能函數(shù)后,掛接到上述待測網(wǎng)絡(luò)程序中。
[0111]可選地,上述發(fā)送單元602,具體用于向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文包括:采用脫機(jī)程序模擬一個或一個以上的客戶端,向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文。
[0112]以上方案,可以解決測試效率低和無法深度測試的問題。理由如下:
[0113]因?yàn)椴迦肓?DLL,DLL是根據(jù)原有待測網(wǎng)絡(luò)程序的流程掛接的,可以調(diào)用待測網(wǎng)絡(luò)程序的功能函數(shù),因此可以靈活的使用多線程或者進(jìn)程集來解決高并發(fā)的問題,從而模擬大規(guī)模的網(wǎng)絡(luò)軟件客戶端在線。因此可以解決測試效率低的問題,提高測試效率。
[0114]因?yàn)椴迦肓?DLL,DLL是根據(jù)原有待測網(wǎng)絡(luò)程序的流程掛接的,可以調(diào)用待測網(wǎng)絡(luò)程序的功能函數(shù),所以不調(diào)用檢測相關(guān)的功能函數(shù),所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。解決了深度測試不能徹底進(jìn)行的問題。
[0115]本發(fā)明實(shí)施例還提供了另一種測試裝置,如圖7所示,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分,具體技術(shù)細(xì)節(jié)未揭示的,請參照本發(fā)明實(shí)施例方法部分。測試裝置可以是終端也可以是服務(wù)器或者其他任意存在待測試網(wǎng)絡(luò)軟件的設(shè)備,以終端為例,該終端可以為包括手機(jī)、平板電腦、PDA (Personal Digital Assistant,個人數(shù)字助理)、POS(Point of Sales,銷售終端)、車載電腦等任意終端設(shè)備,以終端為手機(jī)為例:
[0116]圖7示出的是與本發(fā)明實(shí)施例提供的終端相關(guān)的手機(jī)的部分結(jié)構(gòu)的框圖。參考圖7,手機(jī)包括:射頻(Rad1 Frequency,RF)電路710、存儲器720、輸入單元730、顯示單元740、傳感器750、音頻電路760、無線保真(wireless fidelity,WiFi)模塊770、處理器780、以及電源790等部件。本領(lǐng)域技術(shù)人員可以理解,圖7中示出的手機(jī)結(jié)構(gòu)并不構(gòu)成對手機(jī)的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。
[0117]下面結(jié)合圖7對手機(jī)的各個構(gòu)成部件進(jìn)行具體的介紹:
[0118]RF電路710可用于收發(fā)信息或通話過程中,信號的接收和發(fā)送,特別地,將基站的下行信息接收后,給處理器780處理;另外,將設(shè)計上行的數(shù)據(jù)發(fā)送給基站。通常,RF電路包括但不限于天線、至少一個放大器、收發(fā)信機(jī)、耦合器、低噪聲放大器(Low NoiseAmplifier, LNA)、雙工器等。此外,RF電路70還可以通過無線通信與網(wǎng)絡(luò)和其他設(shè)備通信。上述無線通信可以使用任一通信標(biāo)準(zhǔn)或協(xié)議,包括但不限于全球移動通訊系統(tǒng)(Global System of Mobile communicat1n, GSM)、通用分組無線服務(wù)(General PacketRad1 Service, GPRS)、碼分多址(Code Divis1n Multiple Access, CDMA)、寬帶碼分多址(Wideband Code Divis1n Multiple Access, WCDMA)、長期演進(jìn)(Long Term Evolut1n,LTE)、電子郵件、短消息服務(wù)(Short Messaging Service, SMS)等。
[0119]存儲器720可用于存儲軟件程序以及模塊,處理器780通過運(yùn)行存儲在存儲器720的軟件程序以及模塊,從而執(zhí)行手機(jī)的各種功能應(yīng)用以及數(shù)據(jù)處理。存儲器720可主要包括存儲程序區(qū)和存儲數(shù)據(jù)區(qū),其中,存儲程序區(qū)可存儲操作系統(tǒng)、至少一個功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲數(shù)據(jù)區(qū)可存儲根據(jù)手機(jī)的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲器720可以包括高速隨機(jī)存取存儲器,還可以包括非易失性存儲器,例如至少一個磁盤存儲器件、閃存器件、或其他易失性固態(tài)存儲器件。
[0120]輸入單元730可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與手機(jī)700的用戶設(shè)置以及功能控制有關(guān)的鍵信號輸入。具體地,輸入單元730可包括觸控面板731以及其他輸入設(shè)備732。觸控面板731,也稱為觸摸屏,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸控面板731上或在觸控面板731附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動相應(yīng)的連接裝置。可選的,觸控面板731可包括觸摸檢測裝置和觸摸控制器兩個部分。其中,觸摸檢測裝置檢測用戶的觸摸方位,并檢測觸摸操作帶來的信號,將信號傳送給觸摸控制器;觸摸控制器從觸摸檢測裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點(diǎn)坐標(biāo),再送給處理器780,并能接收處理器780發(fā)來的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實(shí)現(xiàn)觸控面板731。除了觸控面板731,輸入單元730還可以包括其他輸入設(shè)備732。具體地,其他輸入設(shè)備732可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。
[0121]顯示單元740可用于顯示由用戶輸入的信息或提供給用戶的信息以及手機(jī)的各種菜單。顯示單元740可包括顯示面板741,可選的,可以采用液晶顯示器(Liquid CrystalDisplay, IXD)、有機(jī)發(fā)光二極管(Organic Light-Emitting D1de, 0LED)等形式來配置顯示面板741。進(jìn)一步的,觸控面板731可覆蓋顯示面板741,當(dāng)觸控面板731檢測到在其上或附近的觸摸操作后,傳送給處理器780以確定觸摸事件的類型,隨后處理器780根據(jù)觸摸事件的類型在顯示面板741上提供相應(yīng)的視覺輸出。雖然在圖7中,觸控面板731與顯示面板741是作為兩個獨(dú)立的部件來實(shí)現(xiàn)手機(jī)的輸入和輸入功能,但是在某些實(shí)施例中,可以將觸控面板731與顯示面板741集成而實(shí)現(xiàn)手機(jī)的輸入和輸出功能。
[0122]手機(jī)700還可包括至少一種傳感器750,比如光傳感器、運(yùn)動傳感器以及其他傳感器。具體地,光傳感器可包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據(jù)環(huán)境光線的明暗來調(diào)節(jié)顯示面板741的亮度,接近傳感器可在手機(jī)移動到耳邊時,關(guān)閉顯示面板741和/或背光。作為運(yùn)動傳感器的一種,加速計傳感器可檢測各個方向上(一般為三軸)加速度的大小,靜止時可檢測出重力的大小及方向,可用于識別手機(jī)姿態(tài)的應(yīng)用(比如橫豎屏切換、相關(guān)游戲、磁力計姿態(tài)校準(zhǔn))、振動識別相關(guān)功能(比如計步器、敲擊)等;至于手機(jī)還可配置的陀螺儀、氣壓計、濕度計、溫度計、紅外線傳感器等其他傳感器,在此不再贅述。
[0123]音頻電路760、揚(yáng)聲器761,傳聲器762可提供用戶與手機(jī)之間的音頻接口。音頻電路760可將接收到的音頻數(shù)據(jù)轉(zhuǎn)換后的電信號,傳輸?shù)綋P(yáng)聲器761,由揚(yáng)聲器761轉(zhuǎn)換為聲音信號輸出;另一方面,傳聲器762將收集的聲音信號轉(zhuǎn)換為電信號,由音頻電路760接收后轉(zhuǎn)換為音頻數(shù)據(jù),再將音頻數(shù)據(jù)輸出處理器780處理后,經(jīng)RF電路710以發(fā)送給比如另一手機(jī),或者將音頻數(shù)據(jù)輸出至存儲器720以便進(jìn)一步處理。
[0124]WiFi屬于短距離無線傳輸技術(shù),手機(jī)通過WiFi模塊770可以幫助用戶收發(fā)電子郵件、瀏覽網(wǎng)頁和訪問流式媒體等,它為用戶提供了無線的寬帶互聯(lián)網(wǎng)訪問。雖然圖7示出了WiFi模塊770,但是可以理解的是,其并不屬于手機(jī)700的必須構(gòu)成,完全可以根據(jù)需要在不改變發(fā)明的本質(zhì)的范圍內(nèi)而省略。
[0125]處理器780是手機(jī)的控制中心,利用各種接口和線路連接整個手機(jī)的各個部分,通過運(yùn)行或執(zhí)行存儲在存儲器720內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲在存儲器720內(nèi)的數(shù)據(jù),執(zhí)行手機(jī)的各種功能和處理數(shù)據(jù),從而對手機(jī)進(jìn)行整體監(jiān)控。可選的,處理器780可包括一個或多個處理單元;優(yōu)選的,處理器780可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無線通信??梢岳斫獾氖?,上述調(diào)制解調(diào)處理器也可以不集成到處理器780中。
[0126]手機(jī)700還包括給各個部件供電的電源790 (比如電池),優(yōu)選的,電源可以通過電源管理系統(tǒng)與處理器780邏輯相連,從而通過電源管理系統(tǒng)實(shí)現(xiàn)管理充電、放電、以及功耗管理等功能。
[0127]盡管未示出,手機(jī)700還可以包括攝像頭、藍(lán)牙模塊等,在此不再贅述。
[0128]在本發(fā)明實(shí)施例中,該終端所包括的處理器780還具有以下功能:
[0129]向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文,使上述指定待測部分處理上述測試報文并發(fā)送給目標(biāo)設(shè)備;上述待測網(wǎng)絡(luò)程序中的指定待測部分采用逆向分析確定;
[0130]接收上述來自上述目標(biāo)設(shè)備返回的執(zhí)行結(jié)果,并據(jù)上述執(zhí)行結(jié)果確定測試結(jié)果。
[0131]采用逆向分析確定待測網(wǎng)絡(luò)程序中包含的待測部分,測試報文則是發(fā)送給指定待測部分,因此可以靈活的使用多線程或者進(jìn)程集發(fā)送待測報文,從而實(shí)現(xiàn)高并發(fā),實(shí)現(xiàn)大規(guī)模網(wǎng)絡(luò)軟件在線測試,提高測試效率。由于測試報文發(fā)送給指定的待測部分,為避開數(shù)據(jù)檢查提供了條件,因此為深度測試的徹底執(zhí)行提供條件。
[0132]由于發(fā)送測試報文是發(fā)送給待測網(wǎng)絡(luò)程序中的指定待測部分的,待測網(wǎng)絡(luò)程序由很多部分組成,那么待測網(wǎng)絡(luò)程序中的指定待測部分的數(shù)量則可以有很多,那么測試報文則可以同時發(fā)送給各個待測部分,實(shí)現(xiàn)并發(fā)測試。
[0133]本發(fā)明實(shí)施例提供了兩種向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文的可選方式,具體如下:
[0134]可選地,上述向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文包括:
[0135]采用與指定處理流程對應(yīng)的專用腳本,向待測網(wǎng)絡(luò)程序中的指定處理流程發(fā)送測試報文;上述待測網(wǎng)絡(luò)程序中的指定處理流程采用逆向分析得到。
[0136]可選地,上述處理流程包括:
[0137]認(rèn)證信息處理流程、認(rèn)證信息認(rèn)證流程、加解密算法協(xié)商流程、數(shù)據(jù)報文傳遞流程中的至少一項。
[0138]可選地,上述待測網(wǎng)絡(luò)程序中的指定處理流程包括:采用逆向分析上述待測網(wǎng)絡(luò)程序,得到上述待測網(wǎng)絡(luò)程序的處理流程,并由得到的處理流程編寫的脫機(jī)程序,且不包含數(shù)據(jù)檢查功能。
[0139]由于不包含數(shù)據(jù)檢查功能,所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。
[0140]以上方案,可以解決測試效率低和無法深度測試的問題。理由如下:
[0141]因?yàn)槊摍C(jī)程序的代碼是根據(jù)原有待測網(wǎng)絡(luò)程序的流程自寫的,因此可以靈活的使用多線程或者進(jìn)程集來解決高并發(fā)的問題,從而模擬大規(guī)模的網(wǎng)絡(luò)軟件客戶端在線。因此可以解決測試效率低的問題,提高測試效率。
[0142]因?yàn)槊摍C(jī)程序的代碼是根據(jù)原有待測網(wǎng)絡(luò)程序的流程自寫的,所以可以刪除檢測相關(guān)的代碼,所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。解決了深度測試不能徹底進(jìn)行的問題。
[0143]可選地,上述向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文包括:
[0144]向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文,使上述動態(tài)鏈接庫調(diào)用上述測試報文指向的上述待測網(wǎng)絡(luò)程序的功能函數(shù),且不包含數(shù)據(jù)檢查功能函數(shù)。
[0145]由于不包含數(shù)據(jù)檢查的功能函數(shù),所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。
[0146]可選地,上述動態(tài)鏈接庫采用逆向分析上述待測網(wǎng)絡(luò)程序并確定各功能函數(shù)后,掛接到上述待測網(wǎng)絡(luò)程序中。
[0147]可選地,向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文包括:
[0148]采用脫機(jī)程序模擬一個或一個以上的客戶端,向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文。
[0149]以上方案,可以解決測試效率低和無法深度測試的問題。理由如下:
[0150]因?yàn)椴迦肓?DLL,DLL是根據(jù)原有待測網(wǎng)絡(luò)程序的流程掛接的,可以調(diào)用待測網(wǎng)絡(luò)程序的功能函數(shù),因此可以靈活的使用多線程或者進(jìn)程集來解決高并發(fā)的問題,從而模擬大規(guī)模的網(wǎng)絡(luò)軟件客戶端在線。因此可以解決測試效率低的問題,提高測試效率。
[0151]因?yàn)椴迦肓?DLL,DLL是根據(jù)原有待測網(wǎng)絡(luò)程序的流程掛接的,可以調(diào)用待測網(wǎng)絡(luò)程序的功能函數(shù),所以不調(diào)用檢測相關(guān)的功能函數(shù),所以不會有報文被丟棄,這樣可以使所有測試報文都到達(dá)目標(biāo)設(shè)備,目標(biāo)設(shè)備的結(jié)果也可以返回測試端,因此可以達(dá)到深度測試的效果,目標(biāo)設(shè)備對異常數(shù)據(jù)的反應(yīng)也可以測試到,因此可以達(dá)到徹底的測試。解決了深度測試不能徹底進(jìn)行的問題。
[0152]值得注意的是,上述裝置實(shí)施例中,所包括的各個單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本發(fā)明的保護(hù)范圍。
[0153]另外,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述各方法實(shí)施例中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,相應(yīng)的程序可以存儲于一種計算機(jī)可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
[0154]以上僅為本發(fā)明較佳的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明實(shí)施例揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
【權(quán)利要求】
1.一種軟件測試方法,其特征在于,包括: 向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文,使所述指定待測部分處理所述測試報文并發(fā)送給目標(biāo)設(shè)備;所述待測網(wǎng)絡(luò)程序中的指定待測部分采用逆向分析確定; 接收所述來自所述目標(biāo)設(shè)備返回的執(zhí)行結(jié)果,并據(jù)所述執(zhí)行結(jié)果確定測試結(jié)果。
2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文包括: 采用與指定處理流程對應(yīng)的專用腳本,向待測網(wǎng)絡(luò)程序中的指定處理流程發(fā)送測試報文;所述待測網(wǎng)絡(luò)程序中的指定處理流程采用逆向分析得到。
3.根據(jù)權(quán)利要求1所述方法,其特征在于,所述處理流程包括: 認(rèn)證信息處理流程、認(rèn)證信息認(rèn)證流程、加解密算法協(xié)商流程、數(shù)據(jù)報文傳遞流程中的至少一項。
4.根據(jù)權(quán)利要求2或3所述方法,其特征在于,所述待測網(wǎng)絡(luò)程序中的指定處理流程包括:采用逆向分析所述待測網(wǎng)絡(luò)程序,得到所述待測網(wǎng)絡(luò)程序的處理流程,并由得到的處理流程編寫的脫機(jī)程序,且不包含數(shù)據(jù)檢查功能。
5.根據(jù)權(quán)利要求1所述方法,其特征在于,所述向待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文包括: 向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文,使所述動態(tài)鏈接庫調(diào)用所述測試報文指向的所述待測網(wǎng)絡(luò)程序的功能函數(shù),且不包含數(shù)據(jù)檢查功能函數(shù)。
6.根據(jù)權(quán)利要求1所述方法,其特征在于, 所述動態(tài)鏈接庫采用逆向分析所述待測網(wǎng)絡(luò)程序并確定各功能函數(shù)后,掛接到所述待測網(wǎng)絡(luò)程序中。
7.根據(jù)權(quán)利要求5或6所述方法,其特征在于,向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文包括: 采用脫機(jī)程序模擬一個或一個以上的客戶端,向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文。
8.一種軟件測裝置,其特征在于,包括: 存儲單元,用于存儲待測網(wǎng)絡(luò)程序; 發(fā)送單元,用于向所述存儲單元存儲的待測網(wǎng)絡(luò)程序中的指定待測部分發(fā)送測試報文,使所述指定待測部分處理所述測試報文并發(fā)送給目標(biāo)設(shè)備;所述待測網(wǎng)絡(luò)程序中的指定待測部分采用逆向分析確定; 接收單元,用于接收所述來自所述目標(biāo)設(shè)備返回的執(zhí)行結(jié)果,并據(jù)所述執(zhí)行結(jié)果確定測試結(jié)果。
9.根據(jù)權(quán)利要求8所述裝置,其特征在于, 所述發(fā)送單元,具體用于采用與指定處理流程對應(yīng)的專用腳本,向待測網(wǎng)絡(luò)程序中的指定處理流程發(fā)送測試報文;所述待測網(wǎng)絡(luò)程序中的指定處理流程采用逆向分析得到。
10.根據(jù)權(quán)利要求8所述裝置,其特征在于, 所述發(fā)送單元,具體發(fā)送的處理流程包括:認(rèn)證信息處理流程、認(rèn)證信息認(rèn)證流程、加解密算法協(xié)商流程、數(shù)據(jù)報文傳遞流程中的至少一項。
11.根據(jù)權(quán)利要求9或10所述裝置,其特征在于,所述發(fā)送單元,具體發(fā)送的所述待測網(wǎng)絡(luò)程序中的指定處理流程包括:采用逆向分析所述待測網(wǎng)絡(luò)程序,得到所述待測網(wǎng)絡(luò)程序的處理流程,并由得到的處理流程編寫的脫機(jī)程序,且不包含數(shù)據(jù)檢查功能。
12.根據(jù)權(quán)利要求8所述裝置,其特征在于, 所述發(fā)送單元,具體用于向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文,使所述動態(tài)鏈接庫調(diào)用所述測試報文指向的所述待測網(wǎng)絡(luò)程序的功能函數(shù),且不包含數(shù)據(jù)檢查功能函數(shù)。
13.根據(jù)權(quán)利要求8所述裝置,其特征在于, 所述發(fā)送單元,具體發(fā)送的所述動態(tài)鏈接庫采用逆向分析所述待測網(wǎng)絡(luò)程序并確定各功能函數(shù)后,掛接到所述待測網(wǎng)絡(luò)程序中。
14.根據(jù)權(quán)利要求12或13所述裝置,其特征在于, 所述發(fā)送單元,具體用于向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文包括:采用脫機(jī)程序模擬一個或一個 以上的客戶端,向待測網(wǎng)絡(luò)程序中的動態(tài)鏈接庫發(fā)送測試報文。
【文檔編號】G06F11/36GK104077219SQ201310142592
【公開日】2014年10月1日 申請日期:2013年4月23日 優(yōu)先權(quán)日:2013年4月23日
【發(fā)明者】朱貴遠(yuǎn) 申請人:騰訊科技(深圳)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
天镇县| 应城市| 鄱阳县| 新巴尔虎左旗| 苍溪县| 汉沽区| 宝山区| 镇沅| 高州市| 舞阳县| 孝义市| 江永县| 庆城县| 通化县| 尚义县| 甘孜| 泽州县| 虎林市| 博湖县| 惠来县| 陵水| 综艺| 新密市| 长岛县| 全椒县| 彰化市| 巴塘县| 邵武市| 建瓯市| 黔江区| 巴林左旗| 兰坪| 冀州市| 鹿邑县| 南涧| 浦江县| 宜宾市| 北流市| 米林县| 高碑店市| 苗栗县|