軟件自動(dòng)測試過(guò)程改進(jìn)技術(shù)研究 軟件測試
引言
對程序的一次測試活動(dòng)一般包括五個(gè)步驟:
(l)確定測試方法,如邊界值分析等;
(2)設計測試用例,包括輸人值、期望結果等;
(3)建立測試實(shí)施,即組織測試腳本、測試輸入、期望輸出等測試信息;
(4)執行測試實(shí)施;
(5)測試結果分析,包括比較真實(shí)測試結果與期望結果。
通常,測試活動(dòng)中的簡(jiǎn)單重復性測試工作適合自動(dòng)化,例如上述活動(dòng)中的后三個(gè)步驟川。目前的軟件測試工具實(shí)現了部分自動(dòng)化,但主要局限在半自動(dòng)化建立測試實(shí)施、自動(dòng)執行測試實(shí)施、自動(dòng)比較真實(shí)測試結果與期望結果,本文稱(chēng)這些自動(dòng)化的部分為自動(dòng)測試過(guò)程。
本文首先研究了目前軟件測試工具通常采用的自動(dòng)測試過(guò)程,指出它們的瓶頸,然后,針對對象式被測件,提出了改進(jìn)的白動(dòng)測試過(guò)程,并基于.NET技術(shù),討論了改進(jìn)的自動(dòng)測試過(guò)程中關(guān)鍵技術(shù)的實(shí)現。
1當前測試工具采用的自動(dòng)測試過(guò)程
自動(dòng)測試過(guò)程的核心是測試腳本。當前測試工具產(chǎn)生測試腳本的方式有二種:
(l)手工編寫(xiě);
(2)工具捕獲人工測試場(chǎng)景產(chǎn)生;
(3)工具基于人工提供的信息白動(dòng)產(chǎn)生。
捕獲/回放測試工具通常采用方式(l)和(2)為提供了可執行程序的被測件產(chǎn)生測試腳本,單元測試工具通常采用方式(3)為提供了源代碼的被測件產(chǎn)生測試腳本,它們的典型自動(dòng)測試過(guò)程事務(wù)流程分別如?梢钥闯,當前自動(dòng)測試過(guò)程中主要存在如下幾個(gè)問(wèn)題:
(l)由于能力和勞動(dòng)量的限制,利用手工運行或人工分析結果產(chǎn)生測試腳本具有如下的缺點(diǎn):
l)對于規模較大的被測件,利用人工運行或分析結果產(chǎn)生的測試腳本不可能達到全面測試軟件產(chǎn)品的目的;
2)對于經(jīng)常改變的被測件,產(chǎn)生測試腳本所需的人工勞動(dòng)量隨被測件的改變而劇增。
(2)對于不能單獨運行且源代碼不可得的被測件,無(wú)法產(chǎn)生測試腳本。
(3)完全手工設計測試用例,對測試人員來(lái)說(shuō)是一項任務(wù)繁重的工作。
(4)測試信息直接編碼成測試腳本,導致每次編輯測試信息后,都要重新調試測試腳本。
(5)集成測試中需要人工分析并構造樁模塊,這樣的樁模塊很難全面精確反映被模擬模塊的特點(diǎn)。當前軟件測試工具采用的自動(dòng)測試過(guò)程中存在著(zhù)人工干預過(guò)多、測試效率低的缺點(diǎn),遠遠不能滿(mǎn)足目前軟件開(kāi)發(fā)過(guò)程中邊開(kāi)發(fā)、邊測試的要求。改進(jìn)自動(dòng)測試過(guò)程,盡可能減少人工干預,對于成功實(shí)施軟件測試是至關(guān)重要的。
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/