專(zhuān)利名稱(chēng):一種實(shí)現(xiàn)軟件自動(dòng)測(cè)試的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)應(yīng)用技術(shù),尤其涉及實(shí)現(xiàn)軟件自動(dòng)測(cè)試的方法及裝置。
背景技術(shù):
計(jì)算機(jī)技術(shù)的飛速發(fā)展,使得軟件產(chǎn)品在人們生活中已不可或缺。隨著軟件產(chǎn)品廣泛地使用在人們工作和生活中,使得人們對(duì)軟件產(chǎn)品質(zhì)量的要求亦不斷提高。作為保證軟件產(chǎn)品質(zhì)量的措施之一,軟件測(cè)試也越來(lái)越顯示出它的巨大優(yōu)勢(shì)。然而,隨著軟件設(shè)計(jì)規(guī)模的加大以及軟件產(chǎn)品復(fù)雜度的提升,使得軟件的自動(dòng)化測(cè)試變得愈來(lái)愈重要。目前,軟件自動(dòng)測(cè)試技術(shù)的發(fā)展,使得軟件自動(dòng)測(cè)試工具逐漸向多樣化和專(zhuān)業(yè)化的方向發(fā)展。
軟件自動(dòng)測(cè)試有一個(gè)顯而易見(jiàn)的優(yōu)勢(shì)是它能夠提高測(cè)試效率,這是手工測(cè)試無(wú)法企及的。當(dāng)然,它的優(yōu)勢(shì)并不止于這一點(diǎn),還包括能夠跨越語(yǔ)言障礙,擺脫時(shí)間限制,進(jìn)行回歸測(cè)試等,能夠保證測(cè)試過(guò)程對(duì)軟件測(cè)試的一致性和準(zhǔn)確性,并能夠?qū)崿F(xiàn)手工測(cè)試所無(wú)法做到的測(cè)試,如壓力測(cè)試(即對(duì)軟件在各種壓力狀態(tài)下的測(cè)試)以及并發(fā)測(cè)試等。但目前軟件自動(dòng)測(cè)試方法也存在很多局限性,例如,I)無(wú)法進(jìn)行一些特殊的測(cè)試項(xiàng)目,例如軟件使用性能測(cè)試,操作系統(tǒng)或網(wǎng)絡(luò)項(xiàng)目測(cè)試等;2)不能對(duì)程序中意想不到的意外事件進(jìn)行測(cè)試;3)自動(dòng)化測(cè)試會(huì)受到具體項(xiàng)目資源的限制。綜上可以看出,軟件自動(dòng)測(cè)試的優(yōu)勢(shì)很強(qiáng),能在繁瑣重復(fù)性的回歸測(cè)試中極大地減少人力、物力消耗,提高軟件測(cè)試的效率。但因其目前尚存在一些局限性而使得軟件測(cè)試效率提高的極為有限,還不能充分發(fā)揮自動(dòng)化測(cè)試的全部?jī)?yōu)勢(shì),因此亟待改進(jìn)。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種實(shí)現(xiàn)軟件自動(dòng)測(cè)試的方法及裝置,能夠進(jìn)一步提高軟件測(cè)試的效率。為了解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種實(shí)現(xiàn)軟件自動(dòng)測(cè)試的方法,涉及測(cè)試工具,該方法包括設(shè)置被測(cè)模塊的輸入和輸出規(guī)則;在測(cè)試工具上根據(jù)設(shè)置的輸入和輸出規(guī)則編輯或?qū)霚y(cè)試腳本,設(shè)定測(cè)試用例及其參數(shù);啟動(dòng)測(cè)試工具運(yùn)行,通過(guò)測(cè)試工具執(zhí)行測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試。進(jìn)一步地,在測(cè)試工具上根據(jù)設(shè)置的輸入和輸出規(guī)則編輯或?qū)霚y(cè)試腳本,設(shè)定測(cè)試用例及其參數(shù),具體包括在測(cè)試工具上按照輸入和輸出規(guī)則編輯測(cè)試腳本,或者通過(guò)測(cè)試工具導(dǎo)入按照輸入和輸出規(guī)則編輯的測(cè)試腳本;設(shè)定一個(gè)或多個(gè)測(cè)試用例,針對(duì)每一測(cè)試用例設(shè)定執(zhí)行的次數(shù)、執(zhí)行的時(shí)間間隔以及兩個(gè)測(cè)試用例之間執(zhí)行的時(shí)間間隔中的一種或多種參數(shù)。進(jìn)一步地,通過(guò)測(cè)試工具執(zhí)行測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試,包括以下測(cè)試中的一種或多種對(duì)被測(cè)模塊進(jìn)行正常功能測(cè)試;對(duì)被測(cè)模塊進(jìn)行異常處理的測(cè)試,包括被測(cè)模塊接收其它模塊輸出的非正常輸入、符合被測(cè)模塊輸入規(guī)則的邊界或界外輸入以及不符合被測(cè)模塊輸入規(guī)則的輸入中的一種或多種異常處理的測(cè)試;對(duì)被測(cè)模塊處于壓力情況下的測(cè)試,包括軟件執(zhí)行各種操作或運(yùn)行在各階段下被測(cè)模塊對(duì)CPU、內(nèi)存或虛擬內(nèi)存以及句柄的占用情況,根據(jù)分析監(jiān)測(cè)結(jié)果數(shù)據(jù)統(tǒng)計(jì)出被測(cè)模塊運(yùn)行中的情況。進(jìn)一步地,在測(cè)試工具上設(shè)定測(cè)試用例及其參數(shù)的同時(shí),還設(shè)定系統(tǒng)資源監(jiān)控的參數(shù),包括占用CPU、內(nèi)存或虛擬內(nèi)存以及句柄中的一種或多種參數(shù);
通過(guò)測(cè)試工具執(zhí)行測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試,還包括對(duì)被測(cè)模塊進(jìn)行測(cè)試過(guò)程中監(jiān)測(cè)系統(tǒng)的資源,包括軟件執(zhí)行各種操作或運(yùn)行在各階段下被測(cè)模塊對(duì)CPU、內(nèi)存或虛擬內(nèi)存以及句柄的占用情況,根據(jù)分析監(jiān)測(cè)結(jié)果數(shù)據(jù)統(tǒng)計(jì)出被測(cè)模塊運(yùn)行中的情況。進(jìn)一步地,該方法還包括待測(cè)試結(jié)束后獲取測(cè)試結(jié)果,驗(yàn)證被測(cè)模塊的正確性,分析被測(cè)模塊和/或軟件的性能,具體包括對(duì)獲取的測(cè)試結(jié)果進(jìn)行分析,包括對(duì)被測(cè)模塊處理的正確性驗(yàn)證和對(duì)被測(cè)模塊和/或軟件性能監(jiān)測(cè)數(shù)據(jù)的分析,并通過(guò)表格或圖形的形式展示分析結(jié)果。為了解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種實(shí)現(xiàn)軟件自動(dòng)測(cè)試的裝置,包括依次連接的輸入輸出規(guī)則設(shè)置模塊、腳本編輯/導(dǎo)入模塊、測(cè)試用例設(shè)定模塊、測(cè)試執(zhí)行模塊以及測(cè)試結(jié)果分析模塊,其中輸入輸出規(guī)則設(shè)置模塊,用于設(shè)置被測(cè)模塊的輸入和輸出規(guī)則;腳本編輯/導(dǎo)入模塊,用于根據(jù)設(shè)置的被測(cè)模塊的輸入輸出規(guī)則編輯或?qū)霚y(cè)試腳本;測(cè)試用例設(shè)定模塊,用于根據(jù)測(cè)試腳本設(shè)定測(cè)試用例及其參數(shù);測(cè)試執(zhí)行模塊,用于通過(guò)執(zhí)行測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試;測(cè)試結(jié)果分析模塊,用于待測(cè)試結(jié)束后獲取測(cè)試結(jié)果,驗(yàn)證被測(cè)模塊運(yùn)行的正確性,分析被測(cè)模塊和/或軟件的性能。進(jìn)一步地,測(cè)試執(zhí)行模塊除了通過(guò)正常測(cè)試單元對(duì)被測(cè)模塊進(jìn)行正常功能測(cè)試外,還通過(guò)異常測(cè)試單元對(duì)被測(cè)模塊進(jìn)行異常處理的測(cè)試,或通過(guò)壓力測(cè)試單元對(duì)被測(cè)模塊處于壓力情況下的測(cè)試,或通過(guò)資源監(jiān)測(cè)單元在對(duì)被測(cè)模塊進(jìn)行測(cè)試過(guò)程中監(jiān)測(cè)系統(tǒng)的資源。進(jìn)一步地,異常測(cè)試單元對(duì)被測(cè)模塊進(jìn)行異常處理的測(cè)試,包括被測(cè)模塊接收其它模塊輸出的非正常輸入、符合被測(cè)模塊輸入規(guī)則的邊界或界外輸入以及不符合被測(cè)模塊輸入規(guī)則的輸入中的一種或多種異常處理的測(cè)試。進(jìn)一步地,壓力測(cè)試單元對(duì)被測(cè)模塊處于壓力情況下的測(cè)試,包括軟件執(zhí)行各種操作或運(yùn)行在各階段下被測(cè)模塊對(duì)CPU、內(nèi)存或虛擬內(nèi)存以及句柄的占用情況,根據(jù)分析監(jiān)測(cè)結(jié)果數(shù)據(jù)統(tǒng)計(jì)出被測(cè)模塊運(yùn)行中的情況。
進(jìn)一步地,資源監(jiān)測(cè)單元在對(duì)被測(cè)模塊進(jìn)行測(cè)試過(guò)程中監(jiān)測(cè)系統(tǒng)的資源,包括軟件執(zhí)行各種操作或運(yùn)行在各階段下被測(cè)模塊對(duì)CPU、內(nèi)存或虛擬內(nèi)存以及句柄的占用情況,根據(jù)分析監(jiān)測(cè)結(jié)果數(shù)據(jù)統(tǒng)計(jì)出被測(cè)模塊運(yùn)行中的情況。本發(fā)明通過(guò)對(duì)測(cè)試工具統(tǒng)一約定被測(cè)軟件模塊間的數(shù)據(jù)傳輸格式,在測(cè)試工具上編輯測(cè)試腳本自動(dòng)生成測(cè)試用例,并設(shè)定測(cè)試用例的次數(shù),提供對(duì)被測(cè)軟件單模塊在各種情況下進(jìn)行自動(dòng)測(cè)試,包括正常、異常、壓力情況下的測(cè)試,并在測(cè)試過(guò)程中提供對(duì)系統(tǒng)資 源的監(jiān)控。同時(shí),本發(fā)明的測(cè)試工具可以獲取被測(cè)單模塊在執(zhí)行測(cè)試用例后執(zhí)行的結(jié)果,對(duì)結(jié)果進(jìn)行解析,通過(guò)判斷執(zhí)行結(jié)果的正誤來(lái)驗(yàn)證被測(cè)單模塊的正確性。本發(fā)明較大程度地提高了軟件單模塊測(cè)試的工作效率,并可以全面分析軟件運(yùn)行情況。
圖I為本發(fā)明的實(shí)現(xiàn)軟件自動(dòng)測(cè)試的方法實(shí)施例的流程圖;圖2為本發(fā)明的實(shí)現(xiàn)軟件自動(dòng)測(cè)試的裝置實(shí)施例的結(jié)構(gòu)框圖。
具體實(shí)施例方式以下結(jié)合附圖和優(yōu)選實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)地闡述。應(yīng)該理解,以下列舉的實(shí)施例僅用于說(shuō)明和解釋本發(fā)明,而不構(gòu)成對(duì)本發(fā)明技術(shù)方案的限制。本發(fā)明的實(shí)現(xiàn)軟件自動(dòng)測(cè)試的方法實(shí)施例,其流程如圖I所示,包括如下步驟110 :設(shè)置被測(cè)模塊的輸入和輸出規(guī)則;為了實(shí)現(xiàn)對(duì)特定單模塊的測(cè)試,通過(guò)這樣的設(shè)置,可使得測(cè)試工具能夠通過(guò)模擬被測(cè)單模塊的輸入,以被測(cè)模塊支持的通信方式與其它模塊進(jìn)行通信,從而盡量模擬被測(cè)模塊在軟件系統(tǒng)中所處的環(huán)境;并通過(guò)解析被測(cè)單模塊的輸出來(lái)判斷被測(cè)單模塊的正確性。120 :編輯或?qū)霚y(cè)試腳本,設(shè)定測(cè)試用例及其參數(shù),設(shè)定系統(tǒng)資源監(jiān)控的參數(shù);通過(guò)在本發(fā)明的測(cè)試工具上按照指定格式(輸入和輸出規(guī)則)編輯測(cè)試腳本,或者通過(guò)該測(cè)試工具導(dǎo)入按照指定格式外編輯的測(cè)試腳本,并設(shè)定測(cè)試用例及其執(zhí)行的次數(shù)、執(zhí)行的時(shí)間間隔以及兩個(gè)測(cè)試用例之間執(zhí)行的時(shí)間間隔等;同時(shí)還可設(shè)定測(cè)試過(guò)程中進(jìn)行系統(tǒng)資源監(jiān)控的參數(shù)。130 :啟動(dòng)測(cè)試工具運(yùn)行,執(zhí)行測(cè)試用例;測(cè)試腳本完成編輯及測(cè)試用例及其參數(shù)的設(shè)定后,啟動(dòng)測(cè)試工具,根據(jù)腳本設(shè)置的測(cè)試用例開(kāi)始進(jìn)行測(cè)試。140 :除了對(duì)被測(cè)模塊進(jìn)行正常功能測(cè)試外,還對(duì)被測(cè)模塊進(jìn)行如下的一種或多種測(cè)試1401 :異常測(cè)試,主要包括I)軟件異常情況下被測(cè)模塊接收的其它模塊的非正常輸入,即其它模塊發(fā)生故障時(shí)返回給該被測(cè)模塊的消息,通知該被測(cè)模塊其它模塊有異常發(fā)生;測(cè)試該被測(cè)模塊是否能正常處理該非正常輸入,執(zhí)行指定的錯(cuò)誤處理。該非正常輸入的格式應(yīng)符合被測(cè)模塊輸入規(guī)則。
2)符合被測(cè)模塊輸入規(guī)則但無(wú)法處理的邊界或界外輸入,測(cè)試被測(cè)模塊是否能正確執(zhí)行報(bào)錯(cuò)處理。譬如,被測(cè)模塊可以處理1-30范圍內(nèi)的數(shù)字,如果輸入是31的話(huà),就在處被測(cè)模塊無(wú)法處理的范圍內(nèi),但它是符合輸入規(guī)則的,由此測(cè)試被測(cè)模塊的報(bào)錯(cuò)機(jī)制是否正常。3)不符合被測(cè)模塊輸入規(guī)則的輸入,例如測(cè)試被測(cè)模塊是否能正常識(shí)別格式錯(cuò)誤。比如模塊能夠處理格式為{2,3}的輸入,而對(duì)于這個(gè)輸入{2. 3,則是不符合輸入規(guī)則的,則測(cè)試被測(cè)模塊是否能識(shí)別該不可接受的輸入。1402 :壓力測(cè)試,主要包括I)測(cè)試被測(cè)模塊由多線(xiàn)程并發(fā)造成的壓力下是否能夠正常運(yùn)行 當(dāng)多線(xiàn)程并發(fā)的向被測(cè)模塊輸入數(shù)據(jù),會(huì)給軟件的整體運(yùn)行造成壓力。此時(shí)要測(cè)試在大壓力情況下被測(cè)模塊是否依然能夠運(yùn)行正常。2)測(cè)試被測(cè)模塊在系統(tǒng)壓力下是否能夠正常運(yùn)行譬如模擬出系統(tǒng)CPU使用率為99%,或者內(nèi)存耗盡或接近耗盡的情況,判斷該情況下被測(cè)模塊是否依然能夠正常運(yùn)行。1403 :系統(tǒng)資源監(jiān)測(cè),主要包括I)當(dāng)軟件執(zhí)行各種操作時(shí),對(duì)系統(tǒng)的CPU的總占用率,對(duì)被測(cè)模塊的CPU占用率,對(duì)內(nèi)存和虛擬內(nèi)存的占用,以及對(duì)句柄的占用;2)軟件運(yùn)行在各階段(啟動(dòng),處理不同輸入,退出等),對(duì)被測(cè)模塊的CPU占用率,對(duì)內(nèi)存或虛擬內(nèi)存的占用,以及對(duì)句柄的占用3)對(duì)這些數(shù)據(jù)進(jìn)行分析,可以統(tǒng)計(jì)出被測(cè)模塊運(yùn)行過(guò)程的情況,例如,當(dāng)被測(cè)模塊運(yùn)行過(guò)程中,監(jiān)視到內(nèi)存占用不斷增長(zhǎng),說(shuō)明該被測(cè)模塊存在內(nèi)存泄露的非正常情況,需要查找問(wèn)題所在并給予解決。在測(cè)試過(guò)程中,既可單獨(dú)監(jiān)測(cè)系統(tǒng)資源,亦可對(duì)被測(cè)模塊對(duì)應(yīng)的進(jìn)程占用資源進(jìn)行監(jiān)測(cè),記錄監(jiān)測(cè)數(shù)據(jù),以便于后面對(duì)被測(cè)模塊的性能分析。本發(fā)明提供測(cè)試過(guò)程中對(duì)系統(tǒng)資源進(jìn)行監(jiān)測(cè)的功能,根據(jù)編輯腳本設(shè)定自動(dòng)監(jiān)測(cè)操作系統(tǒng)中各項(xiàng)資源的使用情況,被測(cè)模塊對(duì)應(yīng)進(jìn)程的系統(tǒng)資源占用情況,通過(guò)可用數(shù)據(jù)或者圖表的形式來(lái)展示,以全面地掌握被測(cè)模塊運(yùn)行的性能情況。150:獲取測(cè)試結(jié)果,驗(yàn)證被測(cè)模塊運(yùn)行的正確性,分析其性能。待軟件整個(gè)測(cè)試過(guò)程完成后,對(duì)測(cè)試結(jié)果進(jìn)行整理,包括對(duì)被測(cè)模塊處理的正確性驗(yàn)證和對(duì)被測(cè)模塊性能監(jiān)測(cè)數(shù)據(jù)的整理。由于被測(cè)模塊的性能監(jiān)測(cè)直接得到的是數(shù)據(jù)結(jié)果,故可以通過(guò)表格或圖形的形式來(lái)展示。本發(fā)明針對(duì)上述方法實(shí)施例,相應(yīng)地還提供了實(shí)現(xiàn)軟件自動(dòng)測(cè)試的裝置實(shí)施例,其結(jié)構(gòu)如圖2所示,包括依次連接的輸入輸出規(guī)則設(shè)置模塊、腳本編輯/導(dǎo)入模塊、測(cè)試用例設(shè)定模塊、測(cè)試執(zhí)行模塊以及測(cè)試結(jié)果分析模塊,其中輸入輸出規(guī)則設(shè)置模塊,用于設(shè)置被測(cè)模塊的輸入和輸出規(guī)則;腳本編輯/導(dǎo)入模塊,用于根據(jù)設(shè)置的被測(cè)模塊的輸入輸出規(guī)則編輯或?qū)霚y(cè)試腳本;測(cè)試用例設(shè)定模塊,用于根據(jù)測(cè)試腳本設(shè)定測(cè)試用例及其參數(shù);
測(cè)試執(zhí)行模塊,用于通過(guò)執(zhí)行測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試;測(cè)試結(jié)果分析模塊,用于待測(cè)試結(jié)束后獲取測(cè)試結(jié)果,驗(yàn)證被測(cè)模塊運(yùn)行的正確性,分析被測(cè)模塊和/或軟件的性能。在上述裝置實(shí)施例中,測(cè)試執(zhí)行模塊除了通過(guò)正常測(cè)試單元對(duì)被測(cè)模塊進(jìn)行正常功能測(cè)試外,還通過(guò)異常測(cè)試單元對(duì)被測(cè)模塊進(jìn)行異常處理的測(cè)試,或通過(guò)壓力測(cè)試單元對(duì)被測(cè)模塊處于壓力情況下的測(cè)試,或通過(guò)資源監(jiān)測(cè)單元在對(duì)被測(cè)模塊進(jìn)行測(cè)試過(guò)程中監(jiān)測(cè)系統(tǒng)的資源。在上述裝置實(shí)施例中,測(cè)試執(zhí)行模塊通過(guò)異常測(cè)試單元對(duì)被測(cè)模塊進(jìn)行異常輸入處理的測(cè)試,包括被測(cè) 模塊接收其它模塊輸出的非正常輸入、符合被測(cè)模塊輸入規(guī)則的邊界或界外輸入以及不符合被測(cè)模塊輸入規(guī)則的輸入中的一種或多種異常處理的測(cè)試。在上述裝置實(shí)施例中,測(cè)試執(zhí)行模塊通過(guò)壓力測(cè)試單元對(duì)被測(cè)模塊處于壓力情況下的測(cè)試,包括測(cè)試被測(cè)模塊分別在由多線(xiàn)程并發(fā)造成的壓力下和在系統(tǒng)壓力下是否能夠正常運(yùn)行。在上述裝置實(shí)施例中,測(cè)試執(zhí)行模塊通過(guò)資源監(jiān)測(cè)單元在對(duì)被測(cè)模塊進(jìn)行測(cè)試過(guò)程中監(jiān)測(cè)系統(tǒng)的資源,包括軟件執(zhí)行各種操作或運(yùn)行在各階段下被測(cè)模塊對(duì)CPU、內(nèi)存或虛擬內(nèi)存以及句柄的占用情況,根據(jù)分析監(jiān)測(cè)結(jié)果數(shù)據(jù)統(tǒng)計(jì)出被測(cè)模塊運(yùn)行中的情況。在上述裝置實(shí)施例中,測(cè)試結(jié)果分析模塊待測(cè)試過(guò)程完成后,對(duì)獲取的測(cè)試結(jié)果進(jìn)行分析,包括對(duì)被測(cè)模塊處理的正確性驗(yàn)證和對(duì)被測(cè)模塊和/或軟件性能監(jiān)測(cè)數(shù)據(jù)的分析,并通過(guò)表格或圖形的形式展示分析結(jié)果。對(duì)于本領(lǐng)域的專(zhuān)業(yè)人員來(lái)說(shuō),在了解了本發(fā)明內(nèi)容和原理后,能夠在不背離本發(fā)明的原理和范圍的情況下,根據(jù)本發(fā)明的方法進(jìn)行形式和細(xì)節(jié)上的各種修正和改變,但是這些基于本發(fā)明的修正和改變?nèi)栽诒景l(fā)明的權(quán)利要求保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種實(shí)現(xiàn)軟件自動(dòng)測(cè)試的方法,涉及測(cè)試工具,該方法包括 設(shè)置被測(cè)模塊的輸入和輸出規(guī)則; 在測(cè)試工具上根據(jù)設(shè)置的所述輸入和輸出規(guī)則編輯或?qū)霚y(cè)試腳本,設(shè)定測(cè)試用例及其參數(shù); 啟動(dòng)所述測(cè)試工具運(yùn)行,通過(guò)所述測(cè)試工具執(zhí)行所述測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試。
2.按照權(quán)利要求I所述的方法,其特征在于,在測(cè)試工具上根據(jù)設(shè)置的所述輸入和輸出規(guī)則編輯或?qū)霚y(cè)試腳本,設(shè)定測(cè)試用例及其參數(shù),具體包括 在所述測(cè)試工具上按照所述輸入和輸出規(guī)則編輯測(cè)試腳本,或者通過(guò)所述測(cè)試工具導(dǎo)入按照所述輸入和輸出規(guī)則編輯的測(cè)試腳本; 設(shè)定ー個(gè)或多個(gè)測(cè)試用例,針對(duì)每ー測(cè)試用例設(shè)定執(zhí)行的次數(shù)、執(zhí)行的時(shí)間間隔以及兩個(gè)測(cè)試用例之間執(zhí)行的時(shí)間間隔中的ー種或多種參數(shù)。
3.按照權(quán)利要求2所述的方法,其特征在干,通過(guò)所述測(cè)試工具執(zhí)行所述測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試,包括以下測(cè)試中的ー種或多種 對(duì)被測(cè)模塊進(jìn)行正常功能測(cè)試; 對(duì)被測(cè)模塊進(jìn)行異常處理的測(cè)試,包括被測(cè)模塊接收其它模塊輸出的非正常輸入、符合被測(cè)模塊輸入規(guī)則的邊界或界外輸入以及不符合被測(cè)模塊輸入規(guī)則的輸入中的ー種或多種異常處理的測(cè)試; 對(duì)被測(cè)模塊處于壓カ情況下的測(cè)試,包括軟件執(zhí)行各種操作或運(yùn)行在各階段下被測(cè)模塊對(duì)CPU、內(nèi)存或虛擬內(nèi)存以及句柄的占用情況,根據(jù)分析監(jiān)測(cè)結(jié)果數(shù)據(jù)統(tǒng)計(jì)出被測(cè)模塊運(yùn)行中的情況。
4.按照權(quán)利要求3所述的方法,其特征在干,在測(cè)試工具上設(shè)定測(cè)試用例及其參數(shù)的同時(shí),還設(shè)定系統(tǒng)資源監(jiān)控的參數(shù),包括占用所述CPU、內(nèi)存或虛擬內(nèi)存以及句柄中的ー種或多種參數(shù); 通過(guò)所述測(cè)試工具執(zhí)行所述測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試,還包括對(duì)被測(cè)模塊進(jìn)行測(cè)試過(guò)程中監(jiān)測(cè)系統(tǒng)的資源,包括軟件執(zhí)行各種操作或運(yùn)行在各階段下被測(cè)模塊對(duì)CPU、內(nèi)存或虛擬內(nèi)存以及句柄的占用情況,根據(jù)分析監(jiān)測(cè)結(jié)果數(shù)據(jù)統(tǒng)計(jì)出被測(cè)模塊運(yùn)行中的情況。
5.按照權(quán)利要求I至4任一項(xiàng)所述的方法,其特征在于,還包括 待測(cè)試結(jié)束后獲取測(cè)試結(jié)果,驗(yàn)證所述被測(cè)模塊的正確性,分析所述被測(cè)模塊和/或所述軟件的性能,具體包括對(duì)獲取的測(cè)試結(jié)果進(jìn)行分析,包括對(duì)被測(cè)模塊處理的正確性驗(yàn)證和對(duì)被測(cè)模塊和/或軟件性能監(jiān)測(cè)數(shù)據(jù)的分析,并通過(guò)表格或圖形的形式展示分析結(jié)果。
6.一種實(shí)現(xiàn)軟件自動(dòng)測(cè)試的裝置,其特征在于,包括依次連接的輸入輸出規(guī)則設(shè)置模塊、腳本編輯/導(dǎo)入模塊、測(cè)試用例設(shè)定模塊、測(cè)試執(zhí)行模塊以及測(cè)試結(jié)果分析模塊,其中 輸入輸出規(guī)則設(shè)置模塊,用于設(shè)置被測(cè)模塊的輸入和輸出規(guī)則; 腳本編輯/導(dǎo)入模塊,用于根據(jù)設(shè)置的所述被測(cè)模塊的輸入輸出規(guī)則編輯或?qū)霚y(cè)試腳本; 測(cè)試用例設(shè)定模塊,用于根據(jù)所述測(cè)試腳本設(shè)定測(cè)試用例及其參數(shù); 測(cè)試執(zhí)行模塊,用于通過(guò)執(zhí)行測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試;測(cè)試結(jié)果分析模塊,用于待測(cè)試結(jié)束后獲取測(cè)試結(jié)果,驗(yàn)證被測(cè)模塊運(yùn)行的正確性,分析被測(cè)模塊和/或軟件的性能。
7.按照權(quán)利要求6所述的裝置,其特征在干, 所述測(cè)試執(zhí)行模塊除了通過(guò)正常測(cè)試單元對(duì)所述被測(cè)模塊進(jìn)行正常功能測(cè)試外,還通過(guò)異常測(cè)試單元對(duì)所述被測(cè)模塊進(jìn)行異常處理的測(cè)試,或通過(guò)壓カ測(cè)試單元對(duì)被測(cè)模塊處于壓力情況下的測(cè)試,或通過(guò)資源監(jiān)測(cè)單元在對(duì)被測(cè)模塊進(jìn)行測(cè)試過(guò)程中監(jiān)測(cè)系統(tǒng)的資源。
8.按照權(quán)利要求7所述的裝置,其特征在干, 所述異常測(cè)試單元對(duì)所述被測(cè)模塊進(jìn)行異常處理的測(cè)試,包括被測(cè)模塊接收其它模塊輸出的非正常輸入、符合被測(cè)模塊輸入規(guī)則的邊界或界外輸入以及不符合被測(cè)模塊輸入規(guī)則的輸入中的一種或多種異常處理的測(cè)試。
9.按照權(quán)利要求7所述的裝置,其特征在干, 所述壓カ測(cè)試單元對(duì)被測(cè)模塊處于壓カ情況下的測(cè)試,包括軟件執(zhí)行各種操作或運(yùn)行在各階段下被測(cè)模塊對(duì)CPU、內(nèi)存或虛擬內(nèi)存以及句柄的占用情況,根據(jù)分析監(jiān)測(cè)結(jié)果數(shù)據(jù)統(tǒng)計(jì)出被測(cè)模塊運(yùn)行中的情況。
10.按照權(quán)利要求7所述的裝置,其特征在干, 所述資源監(jiān)測(cè)單元在對(duì)被測(cè)模塊進(jìn)行測(cè)試過(guò)程中監(jiān)測(cè)系統(tǒng)的資源,包括軟件執(zhí)行各種操作或運(yùn)行在各階段下被測(cè)模塊對(duì)CPU、內(nèi)存或虛擬內(nèi)存以及句柄的占用情況,根據(jù)分析監(jiān)測(cè)結(jié)果數(shù)據(jù)統(tǒng)計(jì)出被測(cè)模塊運(yùn)行中的情況。
全文摘要
本發(fā)明披露了一種實(shí)現(xiàn)軟件自動(dòng)測(cè)試的方法及裝置,其中方法包括設(shè)置被測(cè)模塊的輸入和輸出規(guī)則;在測(cè)試工具上根據(jù)設(shè)置的輸入和輸出規(guī)則編輯或?qū)霚y(cè)試腳本,設(shè)定測(cè)試用例及其參數(shù);啟動(dòng)測(cè)試工具運(yùn)行,通過(guò)測(cè)試工具執(zhí)行測(cè)試用例對(duì)被測(cè)模塊進(jìn)行測(cè)試。本發(fā)明提供對(duì)被測(cè)軟件單模塊在各種情況下進(jìn)行自動(dòng)測(cè)試,包括正常、異常、壓力情況下的測(cè)試,并在測(cè)試過(guò)程中提供對(duì)系統(tǒng)資源的監(jiān)控;同時(shí)可以獲取被測(cè)單模塊在執(zhí)行測(cè)試用例后執(zhí)行的結(jié)果,對(duì)結(jié)果進(jìn)行解析,通過(guò)判斷執(zhí)行結(jié)果的正誤來(lái)驗(yàn)證被測(cè)單模塊的正確性。本發(fā)明較大程度地提高了軟件單模塊測(cè)試的工作效率。
文檔編號(hào)G06F11/36GK102662828SQ201210067518
公開(kāi)日2012年9月12日 申請(qǐng)日期2012年3月14日 優(yōu)先權(quán)日2012年3月14日
發(fā)明者戴文軍, 王倩 申請(qǐng)人:浪潮(北京)電子信息產(chǎn)業(yè)有限公司