文/方姹
近年來(lái),基于Web的各類網(wǎng)站層出不窮。為了減少軟件故障,保證用戶能夠正常使用網(wǎng)站,對(duì)網(wǎng)站進(jìn)行系統(tǒng)的功能測(cè)試顯得尤為重要。
早在1983年ΙEEE就給出了軟件測(cè)試的定義:“使用人工或自動(dòng)手段來(lái)運(yùn)行或測(cè)定某個(gè)系統(tǒng)的過(guò)程,目的在于檢驗(yàn)它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別”。軟件測(cè)試方法從程序執(zhí)行上分為人工測(cè)試和自動(dòng)化測(cè)試。
自動(dòng)化測(cè)試,即在預(yù)先設(shè)定的條件下運(yùn)行被測(cè)程序并分析運(yùn)行結(jié)果。對(duì)于手動(dòng)測(cè)試,在設(shè)計(jì)了測(cè)試用例后,根據(jù)測(cè)試用例一步一步執(zhí)行得到實(shí)際結(jié)果,并與期望結(jié)果進(jìn)行比對(duì)。手動(dòng)測(cè)試可以發(fā)現(xiàn)新的功能缺陷,自動(dòng)化測(cè)試可以加快測(cè)試速度。
Web應(yīng)用軟件就是常說(shuō)的B/S結(jié)構(gòu)的軟件,電子招投標(biāo)交易平臺(tái)就是典型的Web應(yīng)用軟件。多個(gè)用戶可同時(shí)使用客戶端,并均通過(guò)ΙE瀏覽器訪問(wèn)服務(wù)器端。圖1為Web應(yīng)用軟件的典型結(jié)構(gòu)。
電子招投標(biāo)交易平臺(tái)是一個(gè)基于Web的網(wǎng)站,其特點(diǎn)如下:
(1)基于無(wú)連接協(xié)議;
(2)演化頻繁;
(3)并發(fā)處理能力要強(qiáng)
在測(cè)試過(guò)程中采取分層的策略。
表示層的測(cè)試集中在Web前端,主要關(guān)注軟件的界面,測(cè)試內(nèi)容包括:
(1)UΙ測(cè)試;
(2)鏈接測(cè)試;
(3)前端頁(yè)面功能測(cè)試。
業(yè)務(wù)層的測(cè)試集中在Web后端,主要關(guān)注軟件的業(yè)務(wù)邏輯,測(cè)試內(nèi)容涉及到后端的包括:
(1)單個(gè)功能點(diǎn)測(cè)試;
(2)一組功能點(diǎn)測(cè)試。
數(shù)據(jù)層的測(cè)試主要技術(shù)在Web后端,主要關(guān)注后臺(tái)數(shù)據(jù)庫(kù),測(cè)試內(nèi)容包括:
(1)數(shù)據(jù)完整性測(cè)試;
(2)大數(shù)據(jù)性能測(cè)試。
圖3:LR中200用戶并發(fā)操作場(chǎng)景設(shè)置
電子招投標(biāo)交易平臺(tái)功能測(cè)試包括電子招投標(biāo)交易平臺(tái)會(huì)員端、管理端、投標(biāo)文件制作軟件、網(wǎng)上開(kāi)標(biāo)大廳、網(wǎng)上開(kāi)評(píng)標(biāo)系統(tǒng)、電子招投標(biāo)交易云平臺(tái)六個(gè)系統(tǒng)。涉及房建工程、水利工程、公路工程等通用范本共計(jì)24套,有公開(kāi)招標(biāo)和邀請(qǐng)招標(biāo)等招標(biāo)方式。
電子招投標(biāo)交易平臺(tái)功能測(cè)試主要依據(jù)GB/T25000.51-2016《系統(tǒng)與軟件工程 系統(tǒng)與軟件質(zhì)量要求與評(píng)價(jià)(SQuaRE)第51部分:就緒可用軟件產(chǎn)品(RUSP)的質(zhì)量要求和測(cè)試細(xì)則》。
(1)制定測(cè)試計(jì)劃,包括人員安排、進(jìn)度安排等,測(cè)試過(guò)程中按照測(cè)試計(jì)劃執(zhí)行。
(2)測(cè)試開(kāi)始前對(duì)每個(gè)頁(yè)面的按鈕菜單或每個(gè)模塊功能都寫(xiě)出詳盡的測(cè)試用例,在設(shè)計(jì)測(cè)試用例時(shí),包含給出正確結(jié)果和錯(cuò)誤結(jié)構(gòu)的輸入條件。
(3)測(cè)試過(guò)程中根據(jù)測(cè)試用例執(zhí)行測(cè)試,并全面檢查測(cè)試結(jié)果,產(chǎn)生的bug及時(shí)在管理系統(tǒng)中記錄并跟蹤。
手工測(cè)試依據(jù)需求文檔來(lái)檢查功能是否符合說(shuō)明,很難執(zhí)行所有的測(cè)試用例來(lái)發(fā)現(xiàn)全部的bug,那就要從測(cè)試用例管理系統(tǒng)中挑選出代表性的測(cè)試用例,利用這些測(cè)試用例暴露出程序存在的bug,主要利用等價(jià)類劃分法和邊界值法進(jìn)行測(cè)試。
根據(jù)電子招投標(biāo)的全流程編寫(xiě)的測(cè)試用例,測(cè)試人員主要通過(guò)手動(dòng)觸發(fā)在電子招投標(biāo)交易平臺(tái)上執(zhí)行相關(guān)步驟。測(cè)試執(zhí)行過(guò)程中,不僅要按照全流程的步驟進(jìn)行操作,也要執(zhí)行非法操作,看頁(yè)面提示信息以及響應(yīng)是否正常。
在執(zhí)行過(guò)程中,發(fā)現(xiàn)的bug要及時(shí)上傳至bug管理系統(tǒng),待開(kāi)發(fā)人員修改完畢后,進(jìn)行回歸測(cè)試,確認(rèn)修復(fù)以后,關(guān)閉bug。
本系統(tǒng)面向全省公開(kāi)使用,需重點(diǎn)關(guān)注當(dāng)數(shù)據(jù)量達(dá)到峰值或者即將到達(dá)瓶頸的時(shí)候,電子招投標(biāo)交易平臺(tái)是否能正常工作。在本次測(cè)試中,采用HP Load Runner(LR)軟件進(jìn)行自動(dòng)化測(cè)試。
4.5.1 LR簡(jiǎn)介
LR是一種適用于各種體系架構(gòu)的自動(dòng)負(fù)載測(cè)試工具,通過(guò)模擬實(shí)際用戶的操作和進(jìn)行實(shí)時(shí)性能監(jiān)測(cè),來(lái)幫助用戶排查和發(fā)現(xiàn)問(wèn)題。
4.5.2 測(cè)試場(chǎng)景設(shè)置
使用LR設(shè)置如下兩個(gè)場(chǎng)景,并在場(chǎng)景運(yùn)行時(shí),測(cè)試電子招投標(biāo)交易平臺(tái)是否正常工作。
場(chǎng)景一:設(shè)置3000用戶同時(shí)在線,其中,1000用戶進(jìn)行登錄操作,1000用戶在選擇“招標(biāo)代理”身份進(jìn)行頁(yè)面跳轉(zhuǎn),1000用戶在工作臺(tái)界面進(jìn)行操作,持續(xù)運(yùn)行30分鐘。如圖2所示。
場(chǎng)景二:設(shè)置200用戶并發(fā)登錄操作,集合點(diǎn)設(shè)置為:所有用戶達(dá)到集合點(diǎn)時(shí)釋放,持續(xù)運(yùn)行5分鐘。如圖3所示。
當(dāng)測(cè)試內(nèi)容符合需求文檔,并滿足甲方要求可以正常上線使用時(shí),需要整理最終版本的測(cè)試內(nèi)容,包括測(cè)試點(diǎn)功能列表、bug數(shù)量統(tǒng)計(jì)及修復(fù)情況,測(cè)試相關(guān)策略等。以紙質(zhì)文檔形式輸出報(bào)告。
本文通過(guò)對(duì)電子招投標(biāo)交易平臺(tái)功能測(cè)試方案的研究和分析,可以更好的執(zhí)行Web功能測(cè)試。研究確保UΙ層手工功能測(cè)試覆蓋了各個(gè)頁(yè)面的功能點(diǎn),使用LR對(duì)服務(wù)器施壓來(lái)判定Web應(yīng)用軟件是否能正常工作,并找出服務(wù)器的瓶頸,為系統(tǒng)之后的升級(jí)更新做打算。