前言:中文期刊網(wǎng)精心挑選了軟件測(cè)試報(bào)告范文供你參考和學(xué)習(xí),希望我們的參考范文能激發(fā)你的文章創(chuàng)作靈感,歡迎閱讀。
軟件測(cè)試報(bào)告范文1
【關(guān)鍵詞】軟件測(cè)試 測(cè)試報(bào)告 測(cè)試流程
1 引言
軟件測(cè)試是軟件開發(fā)過程的重要組成部分,是用來確認(rèn)一個(gè)產(chǎn)品的品質(zhì)或性能是否符合開發(fā)之前所提出的要求。對(duì)軟件需求分析、設(shè)計(jì)規(guī)格說明和編碼的最終復(fù)審,某種程度上測(cè)試工作的好壞直接影響了軟件產(chǎn)品的交付和用戶的滿意度。因此,如何做好測(cè)試工作,使測(cè)試在軟件工程中順利進(jìn)行,輔助軟件開發(fā)工作是我們每個(gè)軟件人員應(yīng)該考慮的問題。
2 軟件測(cè)試的目的
(1)確認(rèn)軟件的質(zhì)量,確認(rèn)軟件做了你所期望的事情,確認(rèn)軟件以正確的方式來做了這個(gè)事件。
(2)提供信息,比如提供給開發(fā)人員或程序經(jīng)理的反饋信息,為風(fēng)險(xiǎn)評(píng)估所準(zhǔn)備的信息。
(3)軟件測(cè)試不僅是在測(cè)試軟件產(chǎn)品的本身,而且還包括軟件開發(fā)的過程。軟件測(cè)試的第三個(gè)目的是保證整個(gè)軟件開發(fā)過程是高質(zhì)量的。
3 軟件測(cè)試的對(duì)象
軟件測(cè)試并不等于程序測(cè)試。軟件測(cè)試應(yīng)該貫穿整個(gè)軟件定義與開發(fā)整個(gè)期間。因此需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)以及程序編碼等各階段所得到的文檔,包括需求規(guī)格說明、概要設(shè)計(jì)規(guī)格說明、詳細(xì)設(shè)計(jì)規(guī)格說明以及源程序,都應(yīng)該是軟件測(cè)試的對(duì)象。
4 軟件測(cè)試流程
軟件測(cè)試工作并不是在軟件代碼開發(fā)完畢后才開始的,這一點(diǎn)是很多軟件人員的誤區(qū),需要明確一下,它其實(shí)是在項(xiàng)目進(jìn)入軟件實(shí)現(xiàn)階段就開始了,項(xiàng)目進(jìn)入軟件實(shí)現(xiàn)階段的時(shí)候,就應(yīng)該啟動(dòng)軟件測(cè)試工作了。
下面根據(jù)筆者的測(cè)試經(jīng)驗(yàn),詳細(xì)闡述一下軟件測(cè)試的流程、每個(gè)階段需要做的工作及整個(gè)測(cè)試過程產(chǎn)生的文檔。
4.1 計(jì)劃與設(shè)計(jì)階段
4.1.1 召開測(cè)試啟動(dòng)會(huì)議
當(dāng)項(xiàng)目進(jìn)入軟件實(shí)現(xiàn)階段(編碼),測(cè)試經(jīng)理召集項(xiàng)目經(jīng)理、開發(fā)經(jīng)理開會(huì)確定測(cè)試交接時(shí)間,開發(fā)團(tuán)隊(duì)與測(cè)試團(tuán)隊(duì)交接測(cè)試內(nèi)容,對(duì)測(cè)試目標(biāo)達(dá)成一致,商討測(cè)試計(jì)劃的可行性,統(tǒng)一項(xiàng)目組的目標(biāo)和測(cè)試的工作重點(diǎn)。進(jìn)行規(guī)模預(yù)估并成立測(cè)試團(tuán)隊(duì),完成《測(cè)試計(jì)劃》和《測(cè)試方案》。
4.1.2 設(shè)計(jì)測(cè)試用例
明確了測(cè)試需求和測(cè)試計(jì)劃,在需求分析文檔確立基線以后,測(cè)試組需要針對(duì)測(cè)試需求編寫全部測(cè)試用例,在實(shí)際的測(cè)試中,測(cè)試用例將是唯一實(shí)施標(biāo)準(zhǔn)。
4.2 實(shí)施測(cè)試階段
4.2.1 實(shí)施測(cè)試用例
實(shí)施測(cè)試用例將花費(fèi)測(cè)試組絕大部分時(shí)間,這些工作都是建立在前期很多計(jì)劃工作的基礎(chǔ)上。當(dāng)測(cè)試用例全部編寫完成后,測(cè)試工程師根據(jù)測(cè)試計(jì)劃中分配給自己的測(cè)試任務(wù),實(shí)施相應(yīng)的測(cè)試用例,并記錄測(cè)試結(jié)果。
4.2.2 填寫測(cè)試記錄
測(cè)試人員在進(jìn)行具體的測(cè)試工作時(shí),需要將測(cè)試內(nèi)容填寫在測(cè)試記錄表中,直到所有的測(cè)試執(zhí)行工作結(jié)束。
4.2.3 提交BUG清單
在具體的測(cè)試過程中,測(cè)試人員發(fā)現(xiàn)BUG后,需要將BUG記錄在清單里,并及時(shí)提交給測(cè)試經(jīng)理。
4.2.4 提交測(cè)試報(bào)告
在約定的測(cè)試周期完成之后,測(cè)試工程師需要總結(jié)此測(cè)試的結(jié)果,編寫測(cè)試報(bào)告。測(cè)試工程師根據(jù)此輪測(cè)試的結(jié)果,編寫測(cè)試報(bào)告,主要應(yīng)包含以下內(nèi)容:
(1)測(cè)試報(bào)告的版本。
(2)測(cè)試的人員和時(shí)間。
(3)測(cè)試所覆蓋的缺陷――測(cè)試組在這輪測(cè)試中所有處理的缺陷, 不僅要寫出覆蓋缺陷的總數(shù),還要寫明這些缺陷的去向。
(4)上一版本活動(dòng)缺陷的數(shù)量。
(5)經(jīng)過此輪測(cè)試,所有活動(dòng)缺陷的數(shù)量及其狀態(tài)分類。
(6)測(cè)試評(píng)估――寫明在這一版本中,哪些功能被實(shí)現(xiàn)了,哪些還沒有實(shí)現(xiàn),這里只需寫明和上一版本不同之處即可。
(7)急待解決的問題――寫明當(dāng)前項(xiàng)目組中面臨的最優(yōu)先的問題,可以重復(fù)提出。
在每輪測(cè)試結(jié)束之后應(yīng)盡快將符合標(biāo)準(zhǔn)的測(cè)試報(bào)告發(fā)給測(cè)試經(jīng)理。
4.3 總結(jié)階段
測(cè)試工作結(jié)束或即將結(jié)束時(shí),測(cè)試組就要開始著手準(zhǔn)備進(jìn)行總結(jié)的工作。
4.3.1 編寫測(cè)試總結(jié)報(bào)告
在測(cè)試結(jié)束之后,測(cè)試經(jīng)理編寫測(cè)試報(bào)告,對(duì)測(cè)試進(jìn)行總結(jié),并且提交給項(xiàng)目經(jīng)理,為產(chǎn)品的后續(xù)工作提供重要的信息支持。
測(cè)試經(jīng)理根據(jù)測(cè)試的結(jié)果及測(cè)試工程師提交的測(cè)試報(bào)告編寫測(cè)試總結(jié)報(bào)告,測(cè)試總結(jié)報(bào)告必須包含以下重要內(nèi)容:
(1)測(cè)試資源概述―多少人、多長時(shí)間。
(2)測(cè)試結(jié)果摘要―分別描述各個(gè)測(cè)試需求的測(cè)試結(jié)果,產(chǎn)品實(shí) 現(xiàn)了哪些功能點(diǎn),哪些還沒有實(shí)現(xiàn)。
(3)缺陷分析―按照缺陷的屬性分類進(jìn)行分析。
(4)測(cè)試需求覆蓋率―原先列舉的測(cè)試需求的測(cè)試覆蓋率,可能 一部分測(cè)試需求因?yàn)橘Y源和優(yōu)先級(jí)的因素沒有進(jìn)行測(cè)試,那么 在這里要進(jìn)行說明。
(5)測(cè)試評(píng)估―從總體對(duì)項(xiàng)目質(zhì)量進(jìn)行評(píng)估。
(6)測(cè)試組建議―從測(cè)試組的角度為項(xiàng)目組提出工作建議。
4.3.2 測(cè)試驗(yàn)收
測(cè)試驗(yàn)收工作是在以上工作全部結(jié)束后,測(cè)試經(jīng)理對(duì)測(cè)試的過程、效果進(jìn)行驗(yàn)收,簽發(fā)測(cè)試驗(yàn)收?qǐng)?bào)告,宣布測(cè)試結(jié)束。由測(cè)試經(jīng)理進(jìn)行測(cè)試驗(yàn)收,驗(yàn)收內(nèi)容包括:
(1)測(cè)試效果驗(yàn)收―測(cè)試是否達(dá)到預(yù)期目的。
(2)測(cè)試文檔驗(yàn)收―測(cè)試過程文檔是否齊全,符合標(biāo)準(zhǔn)。
(3)測(cè)試評(píng)估―從總體對(duì)測(cè)試的質(zhì)量進(jìn)行評(píng)估。
(4)測(cè)試建議―對(duì)本次測(cè)試工作指出不足,需要在以后工作中改 進(jìn)的地方。
(5)宣布測(cè)試結(jié)束―測(cè)試組成員簽字宣布本次測(cè)試結(jié)束。
4.3.3 測(cè)試歸檔
測(cè)試歸檔是在測(cè)試驗(yàn)收結(jié)束宣布測(cè)試有效,結(jié)束測(cè)試后,對(duì)測(cè)試過程中涉及到各種標(biāo)準(zhǔn)文檔進(jìn)行歸檔,主要包括測(cè)試計(jì)劃、測(cè)試用例、測(cè)試報(bào)告、驗(yàn)收?qǐng)?bào)告等。這些文檔的編寫保障了測(cè)試的順利進(jìn)行,同時(shí)作為整個(gè)測(cè)試項(xiàng)目的痕跡,被保留下來,供查閱。
參考文獻(xiàn)
[1]佟偉光.軟件測(cè)試[M].北京:人民郵電出版,2008.
[2]Rex Black.測(cè)試流程管理[M].北京:北京大學(xué)出版社,2001.
[3]Robert V.Binder著,華慶一等譯.面向?qū)ο笙到y(tǒng)的測(cè)試[M].北京:人民郵電出版社,2001.
[4]Mark Fewster, Dorothy Graham著,舒智勇等譯.軟件測(cè)試自動(dòng)化技術(shù)與實(shí)例詳解[M].北京:電子工業(yè)出版社,2000.
[5]Karl E.Wiegers著,陸麗娜,王忠民,王志敏譯.軟件需求[M].北京:機(jī)械工業(yè)出版社,2000.
軟件測(cè)試報(bào)告范文2
一、 測(cè)試組組成測(cè)試組由測(cè)試組長和測(cè)試工程師組成。
二、 測(cè)試組工作職責(zé)負(fù)責(zé)理解軟件產(chǎn)品的功能要求,搭建配套的測(cè)試環(huán)境,然后 對(duì)其進(jìn)行系統(tǒng)測(cè)試,檢查軟件有沒有錯(cuò)誤 (Bug),決定軟件是否 具有穩(wěn)定性 (Robustness),并寫出相應(yīng)的測(cè)試用例、各階段測(cè)試 報(bào)告。
(一) 測(cè)試組長工作職責(zé):
1、 協(xié)調(diào)測(cè)試組與各個(gè)項(xiàng)目組之間的流程及工作關(guān)系;
2、 對(duì)各個(gè)項(xiàng)目的測(cè)試工作進(jìn)行統(tǒng)籌安排,并對(duì)各個(gè)項(xiàng)目的 測(cè)試工作進(jìn)行計(jì)劃、分工和管理;
3、 定期或不定期與各個(gè)項(xiàng)目負(fù)責(zé)人溝通項(xiàng)目進(jìn)度,隨時(shí)了 解項(xiàng)目進(jìn)展情況;
4、 對(duì)測(cè)試組成員的日常工作進(jìn)行評(píng)審考核;
5、 定期或不定期向部門總監(jiān)匯報(bào)工作情況;
6、 參與日常的軟件測(cè)試工作。
(二) 測(cè)試工程師工作職責(zé):
1、 仔細(xì)閱讀項(xiàng)目規(guī)格說明、設(shè)計(jì)文檔、使用說明書等,充 分掌握軟件的性能、特點(diǎn)、使用方法、業(yè)務(wù)流程等,協(xié) 助測(cè)試組長制定項(xiàng)目的測(cè)試計(jì)劃;
2、 依據(jù)項(xiàng)目要求,搭建相應(yīng)的測(cè)試環(huán)境,維護(hù)測(cè)試設(shè)備;
3、按照測(cè)試計(jì)劃編寫測(cè)試用例,保證測(cè)試用例合理有效;
4、 根據(jù)測(cè)試計(jì)劃及測(cè)試案例,執(zhí)行測(cè)試,并根據(jù)產(chǎn)品特點(diǎn) 及測(cè)試要求,實(shí)施集成測(cè)試、系統(tǒng)測(cè)試等,及時(shí)發(fā)現(xiàn)軟 件缺陷,評(píng)估軟件的特性與缺陷;
5、 詳細(xì)記錄測(cè)試過程,編寫測(cè)試報(bào)告和對(duì)測(cè)試結(jié)果進(jìn)行分 析,通過測(cè)試,掌握軟件具有的能力、缺陷、局限等, 對(duì)軟件質(zhì)量給出評(píng)價(jià)性的結(jié)論與意見,整理測(cè)試文檔, 填寫軟件測(cè)試報(bào)告,編寫測(cè)試總結(jié),為軟件開發(fā)成果提供 總結(jié)性意見;
6、 配合研發(fā)部門各項(xiàng)軟件產(chǎn)品,并詳細(xì)編寫產(chǎn)品 通知單;
7、 完成上級(jí)及部門其他領(lǐng)導(dǎo)交辦的臨時(shí)任務(wù)。
三、 測(cè)試組工作流程測(cè)試組的工作與項(xiàng)目開發(fā)進(jìn)度緊密相關(guān),所以測(cè)試的工作流 程依據(jù)開發(fā)進(jìn)度分階段進(jìn)行大致分為以下幾個(gè)階段:
(一) 計(jì)劃和設(shè)計(jì)階段
1、 項(xiàng)目組成立時(shí),確定項(xiàng)目需求及項(xiàng)目設(shè)計(jì)方案,了解軟 件產(chǎn)品的主體功能及實(shí)現(xiàn)目的;
2、 項(xiàng)目經(jīng)理下發(fā)測(cè)試預(yù)通知,通知內(nèi)容包括:正式交接測(cè) 試時(shí)間、測(cè)試規(guī)模預(yù)計(jì)估算等信息;
3、 召開測(cè)試啟動(dòng)會(huì)議,會(huì)議內(nèi)容包括:開發(fā)團(tuán)隊(duì)與測(cè)試組 交接測(cè)試內(nèi)容,對(duì)測(cè)試目標(biāo)達(dá)成一致,商討測(cè)試計(jì)劃,
統(tǒng)一項(xiàng)目組的目標(biāo)和測(cè)試的工作重點(diǎn);
4、 編寫測(cè)試計(jì)劃及相關(guān)文檔,依據(jù)測(cè)試啟動(dòng)會(huì)議中確定的 目標(biāo)和重點(diǎn),結(jié)合項(xiàng)目經(jīng)理下發(fā)的《測(cè)試任務(wù)書》,編寫
《測(cè)試計(jì)劃書》(見附件一)。計(jì)劃書的內(nèi)容應(yīng)該包括:
l測(cè)試需求:需要測(cè)試組測(cè)試的范圍,估算出測(cè)試所花 費(fèi)的人力資源和各個(gè)測(cè)試需求的測(cè)試優(yōu)先級(jí);
l測(cè)試方案:整體測(cè)試的測(cè)試方法和每個(gè)測(cè)試需求的測(cè) 試方法;
l測(cè)試資源:本次測(cè)試所需要的人力、軟件、硬件及技 術(shù)資源;
l 測(cè)試組角色:明確測(cè)試組人員的工作內(nèi)容及相關(guān)職責(zé);
l里程碑:明確項(xiàng)目進(jìn)行過程中的測(cè)試組應(yīng)該關(guān)注的里 程碑;
l文檔報(bào)告:確定在項(xiàng)目測(cè)試過程中需要提交的測(cè)試計(jì) 劃,測(cè)試報(bào)告等;
l測(cè)試計(jì)劃編寫完畢后,需提交給全體項(xiàng)目組成員,由 項(xiàng)目成員綜合評(píng)審后,確定最終《測(cè)試計(jì)劃書》(見 附件二)。項(xiàng)目經(jīng)理要以此為依據(jù),跟蹤監(jiān)控項(xiàng)目測(cè) 試進(jìn)度,評(píng)估測(cè)試計(jì)劃的可行性,完整性,并且在項(xiàng) 目結(jié)束后評(píng)估測(cè)試質(zhì)量。
5、 設(shè)計(jì)測(cè)試用例,依據(jù)《測(cè)試計(jì)劃書》相關(guān)內(nèi)容,根據(jù)每 一步測(cè)試計(jì)劃編寫全部的測(cè)試用例,測(cè)試用例必須能滿
足全部的測(cè)試需求。
(二) 測(cè)試實(shí)施階段
1、 實(shí)施測(cè)試用例,測(cè)試工程師依據(jù)《測(cè)試計(jì)劃書》中分配 的測(cè)試任務(wù)和測(cè)試用例,實(shí)施相應(yīng)的測(cè)試工作,并詳細(xì) 記錄測(cè)試過程及結(jié)果。
2、 提交測(cè)試報(bào)告,在實(shí)施測(cè)試用例的過程中,依據(jù)記錄的 測(cè)試過程和結(jié)果,填寫《測(cè)試報(bào)告書》,并由測(cè)試組長審 批后,上報(bào)項(xiàng)目經(jīng)理。項(xiàng)目經(jīng)理安排開發(fā)組修改相應(yīng)的 軟件產(chǎn)品。測(cè)試報(bào)告內(nèi)容包括:測(cè)試產(chǎn)品版本、測(cè)試人 員、測(cè)試時(shí)間、測(cè)試過程、產(chǎn)品運(yùn)行BUG、產(chǎn)品缺陷狀態(tài)、 急待解決的問題。
3、 回歸測(cè)試,接到開發(fā)組的回歸測(cè)試通知后,測(cè)試組重新 拷貝修改后的最新版本,進(jìn)行回歸測(cè)試。回歸測(cè)試的用 例屬于測(cè)試用例的一部分或者全部測(cè)試用例,但不能超 出測(cè)試用例的范圍。
(三) 測(cè)試總結(jié)階段
1、 編寫測(cè)試總結(jié)報(bào)告:回歸測(cè)試全部通過完成后,由測(cè)試 組長整理填寫《測(cè)試總結(jié)報(bào)告》,報(bào)告主要內(nèi)容包括: 測(cè)試資源描述——參與測(cè)試人數(shù),耗用測(cè)試時(shí)間; 測(cè)試結(jié)果摘要——描述各個(gè)測(cè)試需求的測(cè)試結(jié)果和功能 實(shí)現(xiàn)情況; 缺陷分析——按照缺陷的屬性分類進(jìn)行分析;
測(cè)試需求覆蓋率——如果在測(cè)試過程中未覆蓋到的測(cè)試 需求,在此應(yīng)詳細(xì)說明原因; 測(cè)試評(píng)估——對(duì)此次項(xiàng)目質(zhì)量進(jìn)行評(píng)估; 測(cè)試組建議——從測(cè)試組角度為項(xiàng)目組提出工作建議。
2、 測(cè)試驗(yàn)收:項(xiàng)目經(jīng)理收到測(cè)試組長提交的測(cè)試總結(jié)報(bào)告 后,對(duì)此次測(cè)試工作進(jìn)行驗(yàn)收。驗(yàn)收內(nèi)容包括:測(cè)試效 果驗(yàn)收、測(cè)試文檔驗(yàn)收、測(cè)試工作評(píng)估、測(cè)試工作建議, 簽字驗(yàn)收后,宣布此次測(cè)試結(jié)束。
3、 測(cè)試文檔歸檔:測(cè)試驗(yàn)收結(jié)束后,對(duì)測(cè)試過程中涉及到 的各種標(biāo)準(zhǔn)文檔進(jìn)行歸類、存檔。相關(guān)文檔包括:測(cè)試 任務(wù)書、測(cè)試計(jì)劃書、測(cè)試用例、測(cè)試報(bào)告書、測(cè)試總 結(jié)報(bào)告、測(cè)試驗(yàn)收?qǐng)?bào)告等。
(四) 產(chǎn)品階段
軟件測(cè)試報(bào)告范文3
關(guān)鍵詞: 軟件測(cè)試; 自動(dòng)化; 自動(dòng)化測(cè)試; 測(cè)試工具; 可擴(kuò)展標(biāo)記語言技術(shù)
中圖分類號(hào): TP 31文獻(xiàn)標(biāo)識(shí)碼: Adoi: 10.3969/j.issn.10055630.2013.02.004
引言隨著計(jì)算機(jī)應(yīng)用日益普及和深化,用戶對(duì)軟件的需求越來越多,對(duì)軟件要求也總是在不斷變化[1]。AutoCAD產(chǎn)品在軟件國際化的過程中,每次修改都需要對(duì)大量的測(cè)試用例進(jìn)行反復(fù)測(cè)試,還要在不同語言版本的操作系統(tǒng)平臺(tái)上測(cè)試,這就使得該項(xiàng)目的測(cè)試工作極為繁瑣。軟件自動(dòng)化測(cè)試作為保證軟件質(zhì)量和可靠性的關(guān)鍵技術(shù)手段,正日益受到廣泛的重視。但如何進(jìn)行測(cè)試,如何提高測(cè)試的質(zhì)量和效率,仍然是許多人深感困擾的問題[2]。根據(jù)對(duì)AutoCAD軟件測(cè)試項(xiàng)目研究與實(shí)踐的體會(huì),介紹軟件自動(dòng)化測(cè)試技術(shù)的概述、基本過程和實(shí)現(xiàn)。結(jié)合實(shí)用的Silk Test工具以及可擴(kuò)展標(biāo)記語言技術(shù)(extensible markup language,XML),給出整個(gè)自動(dòng)化測(cè)試框架。1自動(dòng)化測(cè)試概述整個(gè)自動(dòng)化測(cè)試平臺(tái)包含兩部分:測(cè)試平臺(tái)和服務(wù)器平臺(tái)。測(cè)試平臺(tái)包含不同語言版本或者不同操作系統(tǒng)的平臺(tái);服務(wù)器平臺(tái)主要含有源代碼版本管理庫和測(cè)試結(jié)果的關(guān)系數(shù)據(jù)庫[3]。一個(gè)規(guī)范化的軟件自動(dòng)化測(cè)試過程通常包括以下幾個(gè)基本的測(cè)試活動(dòng):(1)自動(dòng)化測(cè)試用例選擇對(duì)于Silk Test工具而言,它對(duì)Java的支持很好,所以如果是多模塊、多軟件測(cè)試,首先要盡量選擇和Java相關(guān)的部分來設(shè)計(jì)用例[4]。(2)自動(dòng)化測(cè)試環(huán)境準(zhǔn)備開啟windows遠(yuǎn)程控制,設(shè)置文件的擴(kuò)展名可見,安裝待測(cè)試AutoCAD系列產(chǎn)品,安裝測(cè)試過程所需的自動(dòng)化測(cè)試軟件(Silk Test軟件)等等一系列配置。光學(xué)儀器第35卷
第2期商林霞,等:基于XML的軟件自動(dòng)化測(cè)試
(3)自動(dòng)化測(cè)試腳本開發(fā)Silk Test自動(dòng)化測(cè)試工具支持簡(jiǎn)單的捕獲同放功能,但是這并不是自動(dòng)化測(cè)試。測(cè)試工具直接錄制產(chǎn)生的腳本是不能直接使用的,所以對(duì)于利用Silk Test工具編寫的腳本來說,通常是通過捕獲對(duì)話框圖形,抓到測(cè)試對(duì)象。然后利用Silk Test所提供的4Test語言來添加函數(shù)、控制結(jié)構(gòu)等[5]。 (4)自動(dòng)化測(cè)試報(bào)告生成分析腳本運(yùn)行的結(jié)果是否符合要求,決定每個(gè)用例自動(dòng)化測(cè)試是否通過。對(duì)測(cè)試結(jié)果進(jìn)行分類整理,生成測(cè)試報(bào)告。對(duì)于不能通過的測(cè)試結(jié)果要進(jìn)行分析、記錄和通報(bào),方便相關(guān)的測(cè)試人員和開發(fā)人員了解測(cè)試結(jié)果。2自動(dòng)化測(cè)試系統(tǒng)過程為了取得自動(dòng)化測(cè)試效率和效益的最大化,現(xiàn)選取當(dāng)前最適合自動(dòng)化的測(cè)試用例。例如自動(dòng)化測(cè)試腳本編寫異常復(fù)雜的用例、運(yùn)行自動(dòng)化測(cè)試腳本很難發(fā)現(xiàn)軟件缺陷的用例等等,都可以不運(yùn)用自圖1自動(dòng)化測(cè)試系統(tǒng)實(shí)現(xiàn)框圖
Fig.1Automation testing system
realization block diagram動(dòng)化測(cè)試,而運(yùn)用手動(dòng)測(cè)試代替。同時(shí)在兩個(gè)測(cè)試版本的間歇進(jìn)行新的腳本的開發(fā),當(dāng)有了一定數(shù)量的腳本之后,就讓腳本運(yùn)行起來,發(fā)揮作用[6]。現(xiàn)只要保證自動(dòng)化運(yùn)行的環(huán)境足夠充足,那么每個(gè)測(cè)試版本所需的時(shí)間就會(huì)足夠短,節(jié)省了大量的人力。軟件自動(dòng)化測(cè)試是一個(gè)極為復(fù)雜的過程。在不同的測(cè)試環(huán)境下,測(cè)試的流程也會(huì)有所不同。一般都要根據(jù)實(shí)際情況,制定相應(yīng)的測(cè)試流程。從軟件測(cè)試對(duì)象出發(fā),軟件自動(dòng)化測(cè)試系統(tǒng)實(shí)現(xiàn)框圖,如圖1所示。對(duì)于不同語言版本的本地化測(cè)試,測(cè)試過程大體是相似的。首先根據(jù)AutoCAD軟件的功能特征選擇和設(shè)計(jì)測(cè)試用例,然后就是由測(cè)試用例編寫測(cè)試腳本,接著就是將這些測(cè)試腳本作為輸入運(yùn)行程序,將通過測(cè)試得到的結(jié)果與先得到的英語版本的結(jié)果進(jìn)行比較,最后就是將兩者的比較結(jié)果寫成測(cè)試報(bào)告,軟件開發(fā)者根據(jù)測(cè)試報(bào)告再?zèng)Q定對(duì)軟件如何處理[7]。3系統(tǒng)實(shí)現(xiàn)
3.1腳本生成根據(jù)測(cè)試設(shè)計(jì)中的每個(gè)測(cè)試用例,利用 Silk Test軟件進(jìn)行編程,完成自動(dòng)化測(cè)試腳本。腳本編寫完成,進(jìn)行不斷地調(diào)試,直至完成的腳本符合測(cè)試用例驗(yàn)證的要求。編程語言是4Test語言,整個(gè)腳本的思路是基于AutoCAD軟件對(duì)話框?qū)ο髞韺?shí)現(xiàn)的。函數(shù)中執(zhí)行圖像錄像功能的語句,把整個(gè)自動(dòng)化測(cè)試的windows平臺(tái)界面上的執(zhí)行過程錄制下來,方便判斷軟件是否存在缺陷。針對(duì)每個(gè)自動(dòng)化測(cè)試的測(cè)試用例,編寫測(cè)試腳本。每個(gè)測(cè)試用例都有數(shù)個(gè)測(cè)試確認(rèn)點(diǎn),測(cè)試腳本要保證每個(gè)測(cè)試確認(rèn)點(diǎn)都能被執(zhí)行自動(dòng)化測(cè)試,生成測(cè)試結(jié)果。測(cè)試腳本程序示例如下:
3.2結(jié)果信息讀取軟件本地化測(cè)試的對(duì)象是本地化的軟件,需要在本地語言的操作系統(tǒng)上進(jìn)行。以Windows中文語言操作平臺(tái)為例,用Silk Test工具運(yùn)行該對(duì)話框?qū)?yīng)的測(cè)試腳本,生成XML的結(jié)果信息文件,該XML記錄了該對(duì)話框上的所有信息:文字信息、控件位置信息、控件屬性信息。圖2中所示的AutoCAD軟件對(duì)話框的XML部分信息示例如下:
在獲取對(duì)話框信息之后,接著就要進(jìn)行XML結(jié)果的分析。讀取XML文件信息的程序片段為:
其中,利用XPath的路徑表達(dá)式來選取XML文檔中的節(jié)點(diǎn)或者節(jié)點(diǎn)集[8]。如要讀取出對(duì)話框的標(biāo)題信息“選擇樣板”,則正確的XPath語句是“/DIALOG/CONTROL[1]/Texts_LIST/@Texts_00000”。類似地,對(duì)話框上各控件的位置、大小、屬性等信息都可獲取到。如圖2中的截?cái)噱e(cuò)誤,都用紅色線框標(biāo)示出來,提升了后期錯(cuò)誤分析的效率。
3.3結(jié)果對(duì)比國際化軟件自動(dòng)化測(cè)試包括軟件國際化測(cè)試和軟件本地化測(cè)試。軟件的國際化測(cè)試一般是英語版本的測(cè)試,必須在本地化測(cè)試之前進(jìn)行。首先進(jìn)行國際化軟件測(cè)試有助于判斷軟件國際化的設(shè)計(jì)程度,確定軟件支持的國家區(qū)域,以及本地化是否容易[9]。本地化測(cè)試過程中,以源程序軟件結(jié)果(標(biāo)準(zhǔn)英語版本)作為本地化軟件的主要參考。運(yùn)行英語版本和本地化版本的結(jié)果比較程序,本地化版本對(duì)話框都將與標(biāo)準(zhǔn)英語版本對(duì)話框的各項(xiàng)信息進(jìn)行對(duì)比。經(jīng)對(duì)比本地化軟件存在缺陷時(shí)有三大類情況:(1)本地化軟件對(duì)話框的某項(xiàng)XML信息(控件的位置、大小、屬性等)是空值;(2)本地化軟件對(duì)話框的某項(xiàng)信息值的長度和標(biāo)準(zhǔn)英語版本的不一致;(3)本地化軟件對(duì)話框的某項(xiàng)信息內(nèi)容(控件的位置、大小、屬性等)和標(biāo)準(zhǔn)英語版本的不一致。結(jié)果比較程序的部分示例:
3.4結(jié)果分析在實(shí)際的項(xiàng)目測(cè)試過程中,每一步都有很具體的內(nèi)容。例如在報(bào)告測(cè)試結(jié)果的同時(shí),實(shí)際上還包含了對(duì)測(cè)試結(jié)果的統(tǒng)計(jì)和分析,測(cè)試工程師通過對(duì)結(jié)果進(jìn)行分析來判斷是否存在缺陷,將缺陷上傳至Test Desk網(wǎng)站進(jìn)行管理。表1對(duì)話框界面的典型錯(cuò)誤類型
Tab.1Typical error type of dialog user interface
軟件測(cè)試報(bào)告范文4
關(guān)鍵詞 計(jì)量自動(dòng)化系統(tǒng);性能測(cè)試;優(yōu)化
中圖分類號(hào) TP311 文獻(xiàn)標(biāo)識(shí)碼 A 文章編號(hào) 1673-9671-(2012)072-0112-01
隨著科學(xué)技術(shù)的不斷進(jìn)步,電力自動(dòng)化程度越來越高,特別現(xiàn)場(chǎng)電能量數(shù)據(jù)終端、大客戶負(fù)荷控制終端、配變計(jì)量監(jiān)測(cè)終端和集抄終端抄表系統(tǒng)的運(yùn)行,更是讓遠(yuǎn)程控制變成了現(xiàn)實(shí),但是,這些遠(yuǎn)程系統(tǒng)是不是存在漏洞,各模塊能不能協(xié)同作用,是不是存在沖突,能不能傳輸完整的數(shù)據(jù)、能不能對(duì)數(shù)據(jù)進(jìn)行系統(tǒng)的分析等問題也向系統(tǒng)提出了要求,在這種情況下,認(rèn)真進(jìn)行電力行業(yè)各種自動(dòng)化系統(tǒng)軟件性能測(cè)試解析與優(yōu)化,確保四分線損、供電質(zhì)量、停電統(tǒng)計(jì)、預(yù)購電管理、錯(cuò)峰管理、負(fù)荷控制、拉合閘管理等功能模塊之間能夠協(xié)調(diào)有序進(jìn)行,對(duì)于維護(hù)電力系統(tǒng)的正常運(yùn)行,提高電力行業(yè)的綜合競(jìng)爭(zhēng)能力具有非常重要的現(xiàn)實(shí)意義。
1 計(jì)量自動(dòng)化系統(tǒng)性能測(cè)試的目的
通過對(duì)計(jì)量自動(dòng)化系統(tǒng)性能的測(cè)試不但可以發(fā)現(xiàn)軟件存在的漏洞和缺陷,而且還可以驗(yàn)證系統(tǒng)軟件在各種情況下的運(yùn)行能力。電力用戶的不斷增加也給系統(tǒng)軟件運(yùn)行提出了要求,系統(tǒng)所能夠承受的最大用戶量也是電力行業(yè)必須充分了解的問題,通過計(jì)量自動(dòng)化系統(tǒng)性能測(cè)試就可以解決這個(gè)問題。同時(shí),通過針對(duì)性的系統(tǒng)軟件測(cè)試還可以實(shí)現(xiàn)系統(tǒng)軟件的性能優(yōu)化,使系統(tǒng)軟件能夠在不同的條件下都能夠穩(wěn)定運(yùn)行。
2 計(jì)量自動(dòng)化系統(tǒng)性能測(cè)試的內(nèi)容
在計(jì)量自動(dòng)化系統(tǒng)運(yùn)行過程中,軟件的運(yùn)行環(huán)境、軟件的響應(yīng)時(shí)間、軟件長期運(yùn)行的穩(wěn)定性、軟件所能支持的最大并發(fā)數(shù)以及系統(tǒng)在一定時(shí)間內(nèi)所能夠處理的信息量等內(nèi)容都會(huì)給系統(tǒng)運(yùn)行造成一定的影響,因此在進(jìn)行計(jì)量自動(dòng)化系統(tǒng)性能測(cè)試的過程中,就必須針對(duì)上面容易給系統(tǒng)造成影響的內(nèi)容進(jìn)行精確的性能測(cè)試,以避免軟件的不啟動(dòng)、誤操作或者非正常運(yùn)行等狀況發(fā)生。在測(cè)試過程中,我們主要是通過現(xiàn)場(chǎng)模擬,使用自動(dòng)化測(cè)試工具對(duì)電力系統(tǒng)負(fù)載正常、負(fù)載異常以及峰值等階段進(jìn)行測(cè)試,從而判斷計(jì)量自動(dòng)化系統(tǒng)的各項(xiàng)性能指標(biāo)是不是能夠達(dá)到標(biāo)準(zhǔn)。
3 計(jì)量自動(dòng)化系統(tǒng)性能測(cè)試解析與優(yōu)化
作為一款系統(tǒng)軟件行為與性能的測(cè)試產(chǎn)品,Load Runner主要包括VuGen(虛擬用戶發(fā)生器)、Pressure regulation(壓力調(diào)度)、Controller(監(jiān)控中心)、Load Generator(壓力生成器)、Analysis(結(jié)果分析工具)等。通過Load Runner就能夠完成對(duì)計(jì)量自動(dòng)化系統(tǒng)性能進(jìn)行測(cè)試。其常規(guī)測(cè)試步驟如下:
1)對(duì)計(jì)量自動(dòng)化系統(tǒng)性能進(jìn)行測(cè)試,針對(duì)軟件的運(yùn)行環(huán)境、軟件的響應(yīng)時(shí)間、軟件長期運(yùn)行的穩(wěn)定性、軟件所能支持的最大并發(fā)數(shù)以及系統(tǒng)在一定時(shí)間內(nèi)所能夠處理的信息量等內(nèi)容對(duì)系統(tǒng)運(yùn)行造成的影響進(jìn)行測(cè)試。
2)在操作計(jì)量自動(dòng)化系統(tǒng)的前提條件下,通過VuGen記錄生成相關(guān)虛擬用戶腳本。
3)對(duì)腳本進(jìn)行修改,確保腳本能夠?qū)崿F(xiàn)我完整回放。
4)在Controller內(nèi)根據(jù)測(cè)試內(nèi)容進(jìn)行測(cè)試場(chǎng)景配制。其內(nèi)容主要包括,電力虛擬用戶數(shù)目、運(yùn)行參數(shù)、電力用戶的增長方式、軟件測(cè)試的循環(huán)方式、安全退出、軟件監(jiān)視指標(biāo)等。
5)執(zhí)行測(cè)試。Controller通過Load Generator對(duì)被測(cè)試的系統(tǒng)軟件產(chǎn)生一定的壓力,施加一定的行為,然后對(duì)系統(tǒng)在測(cè)試過程中的數(shù)據(jù)進(jìn)行收集,然后將數(shù)據(jù)傳遞到Controller,并讓Controller進(jìn)行數(shù)據(jù)匯總。
6)通過Analysis對(duì)匯總的數(shù)據(jù)進(jìn)行分析,并在數(shù)據(jù)分析的基礎(chǔ)上進(jìn)行優(yōu)化方案設(shè)計(jì)。
7)進(jìn)行優(yōu)化測(cè)試。盡管計(jì)量自動(dòng)化系統(tǒng)模塊眾多,并且各模塊執(zhí)行的動(dòng)作不同,但是進(jìn)行軟件測(cè)試和優(yōu)化的程序大致相同,現(xiàn)在以采集模塊的優(yōu)化和測(cè)試進(jìn)行說明。
4 制定采集模塊作性能測(cè)試方案
4.1 確定采集模塊作測(cè)試場(chǎng)景
采集模塊作測(cè)試場(chǎng)景主要是模擬系統(tǒng)軟件的實(shí)際運(yùn)行場(chǎng)景,其主要內(nèi)容包括運(yùn)行參數(shù)、軟件測(cè)試的循環(huán)方式、安全退出、軟件監(jiān)視指標(biāo)等。在測(cè)試場(chǎng)景確定的過程中,要盡可能選擇和采集模塊作在實(shí)際運(yùn)行過程中比較相似的接受四個(gè)數(shù)據(jù)終端數(shù)據(jù)的任務(wù)并發(fā)測(cè)試場(chǎng)景,從而充分了解采集模塊作極限運(yùn)行狀態(tài)下的運(yùn)行狀況。
4.2 確定監(jiān)視指標(biāo)
在測(cè)試過程中,必須認(rèn)真監(jiān)視和服務(wù)器相對(duì)應(yīng)的軟件性能計(jì)數(shù)器,其監(jiān)視的結(jié)果就是監(jiān)視指標(biāo),通過監(jiān)視指標(biāo)不但能夠進(jìn)行結(jié)果分析,而且還可以尋找導(dǎo)致發(fā)生性能問題的根源。
5 執(zhí)行采集模塊性能測(cè)試方案
5.1 搭建采集模塊性能測(cè)試環(huán)境
首先,要按照測(cè)試方案搭建一個(gè)獨(dú)立、無病毒、相似性強(qiáng)的采集模塊運(yùn)行環(huán)境,然后安裝調(diào)試采集模塊,安裝Load Runner;其次,準(zhǔn)備測(cè)試數(shù)據(jù)。為了保證測(cè)試數(shù)據(jù)的合理性,測(cè)試數(shù)據(jù)通常從電力部門獲取,如果是自己準(zhǔn)備的數(shù)據(jù),要分析數(shù)據(jù)的合理性,避免出現(xiàn)大量的垃圾信息,其數(shù)據(jù)必須確保軟件能夠按照流程正常運(yùn)行。再次,在測(cè)試數(shù)據(jù)準(zhǔn)備完成后,要及時(shí)進(jìn)行數(shù)據(jù)庫的備份。
5.2 編寫或者錄制測(cè)試腳本
測(cè)試腳本的生成既能夠通過編寫完成,又能夠通過測(cè)試工具進(jìn)行錄制。不管是上述兩種方式中的哪一種,所生成的測(cè)試腳本必須有效,這也就是說測(cè)試腳本能夠充分反映系統(tǒng)軟件的實(shí)際運(yùn)行狀況。
5.3 測(cè)試場(chǎng)景的布置
按照測(cè)定方案進(jìn)行測(cè)試場(chǎng)景的布置。
5.4 執(zhí)行測(cè)試
要想準(zhǔn)確判斷軟件的實(shí)際運(yùn)行能力,必須通過一定強(qiáng)度的測(cè)試,準(zhǔn)確測(cè)定EAC(即電能量數(shù)據(jù)遙測(cè)終端)、集抄終端、負(fù)控終端和配變終端的使用效率,運(yùn)行速度、穩(wěn)定性。
在測(cè)試過程中,要認(rèn)真測(cè)試不同壓力下采集程序的定時(shí)采集數(shù)據(jù)的能力,以及負(fù)控、配變、集抄終端的主動(dòng)連接和采集數(shù)據(jù)的能力;來自于每一個(gè)終端上報(bào)信息的時(shí)間、數(shù)據(jù)量以及數(shù)據(jù)的質(zhì)量;任務(wù)調(diào)度程序和采集傳輸服務(wù)程序任務(wù)調(diào)度分發(fā)能力和負(fù)載均衡能力。
認(rèn)真比對(duì)不同壓力下信息采集的工作效率,進(jìn)而對(duì)整個(gè)模塊做出準(zhǔn)確的判斷,然后在測(cè)定系統(tǒng)各個(gè)模塊的基礎(chǔ)上實(shí)現(xiàn)對(duì)系統(tǒng)的測(cè)試。在測(cè)試過程中,不管是哪一個(gè)環(huán)節(jié),都必須采用統(tǒng)一的標(biāo)準(zhǔn),糾正任何一點(diǎn)偏差,否則就會(huì)導(dǎo)致測(cè)試失敗。同時(shí),還要注意外部環(huán)境對(duì)測(cè)試結(jié)果在成的影響。
6 生成并分析測(cè)試報(bào)告
測(cè)試報(bào)告是整個(gè)測(cè)試的結(jié)論性文件。系統(tǒng)開發(fā)人員要對(duì)測(cè)試報(bào)告中的相關(guān)數(shù)據(jù)進(jìn)行分析,認(rèn)真查找模塊中存在的問題以及缺陷。在這個(gè)過程中,首先必須認(rèn)真篩選出測(cè)試數(shù)據(jù)中的典型數(shù)據(jù),然后認(rèn)真分析數(shù)據(jù),查找隱含在數(shù)據(jù)中的模塊問題;其次,要認(rèn)真分析問題發(fā)生的原因,在找出原因的基礎(chǔ)上提出合理的解決或者優(yōu)化方案。
7 小結(jié)
總之,通過軟件性能測(cè)試,可以發(fā)現(xiàn)存在于計(jì)量自動(dòng)化系統(tǒng)中的缺陷和漏洞,并進(jìn)行糾正,這樣就可以確保電力系統(tǒng)的遠(yuǎn)程控制的正常進(jìn)行,真正實(shí)現(xiàn)電力計(jì)量自動(dòng)化。
參考文獻(xiàn)
[1]李軍鋒,任世鶴.軟件可靠性及其測(cè)試分析[J].軟件導(dǎo)刊,2010,09(08).
軟件測(cè)試報(bào)告范文5
關(guān)鍵詞:軟件測(cè)試;案例教學(xué);教學(xué)內(nèi)容
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2010)09-2275-02
Teaching Methods of Software Testing Technology
GAO Zhi-sheng
(School of Mathematic and Computer, Xihua University, Chengdu 610039, China)
Abstract: Software testing is a course that teaches the software testing methods and means. Case teaching methods that runs through the whole software testing process with a single case is proposed. The corresponding teaching contents and experiment requirements are also introduced. Through the teaching methods, the studying interesting, the initiative and the capability of finishing the practical software testing projects are really improved.
Key words: software testing; case teaching; teaching contents
軟件開發(fā)過程中的質(zhì)量問題是關(guān)系到軟件和軟件組織生存的重大問題,得到了越來越多的重視。目前在高校的軟件工程專業(yè)普遍開設(shè)有軟件測(cè)試相關(guān)課程。但是在具體教學(xué)實(shí)踐中,教師普遍感覺到有許多不如意的地方[1],具體表現(xiàn)在教學(xué)內(nèi)容與具體應(yīng)用脫節(jié),學(xué)生對(duì)軟件測(cè)試認(rèn)識(shí)有誤區(qū),學(xué)生學(xué)習(xí)積極性不強(qiáng)、認(rèn)為軟件測(cè)試是文字性課程,軟件測(cè)試過程如何展開,如何選擇測(cè)試工具,如何在教學(xué)中貫徹軟件測(cè)試管理思想等。
近年來關(guān)于怎樣進(jìn)行軟件測(cè)試教學(xué),引起了相關(guān)專家的重視和討論[1-4]。本文在總結(jié)前人的經(jīng)驗(yàn)基礎(chǔ)上,結(jié)合作者近幾年在軟件測(cè)試技術(shù)課程教學(xué)中的實(shí)踐提出了以一個(gè)具體項(xiàng)目案例貫穿整個(gè)教學(xué)過程,理論與實(shí)踐緊密結(jié)合的教學(xué)方法。
1 教學(xué)的目的和教學(xué)方法
軟件測(cè)試技術(shù)課程是本校軟件工程專業(yè)的一門專業(yè)必修課程,通過軟件知識(shí)體系的學(xué)習(xí),使學(xué)生了解軟件測(cè)試的發(fā)展現(xiàn)狀,認(rèn)識(shí)軟件測(cè)試的重要性,掌握軟件測(cè)試的方法和技術(shù),熟悉軟件測(cè)試過程管理,從而具有獨(dú)立承擔(dān)軟件測(cè)試項(xiàng)目的實(shí)施能力,具有測(cè)試計(jì)劃、管理、實(shí)現(xiàn)和軟件質(zhì)量保障的能力[3]。
針對(duì)以上教學(xué)目的,我們?cè)谲浖y(cè)試技術(shù)教學(xué)過程中引入一個(gè)具體測(cè)試項(xiàng)目案例貫穿整個(gè)教學(xué)過程的教學(xué)方法。第一課時(shí),我們組織學(xué)生自由進(jìn)行分組,每組5個(gè)人左右,每組確定一個(gè)名稱。要求每個(gè)小組在課程的前幾周完成同一個(gè)模擬題目“大學(xué)圖書館管理系統(tǒng)”的軟件開發(fā)。系統(tǒng)完成后,然后各個(gè)小組交叉進(jìn)行測(cè)試對(duì)方開發(fā)的軟件系統(tǒng)。隨著課程的進(jìn)度,主要要求學(xué)生完成軟件系統(tǒng)的單元測(cè)試,集成測(cè)試,功能測(cè)試和系統(tǒng)測(cè)試。單一的案例貫穿整個(gè)軟件項(xiàng)目測(cè)試過程的案例教學(xué)方法的優(yōu)點(diǎn)是:
1)軟件測(cè)試的前期課程有“Java EE編程技術(shù)”,同時(shí)我們選擇圖書館管理系統(tǒng)作為開發(fā)對(duì)象,學(xué)生從技術(shù)上和業(yè)務(wù)需求上都具備快速完成該系統(tǒng)的能力。
2)相同的開發(fā)對(duì)象,互相測(cè)試對(duì)方開發(fā)的系統(tǒng),有利于形成競(jìng)爭(zhēng),有利于調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性。同時(shí)也有利于教師對(duì)學(xué)生完成的結(jié)果進(jìn)行點(diǎn)評(píng)和組織課堂討論。
3)整個(gè)軟件測(cè)試課程,學(xué)生能夠完成對(duì)一個(gè)具體項(xiàng)目的全部測(cè)試過程,有利于促進(jìn)學(xué)生系統(tǒng)地掌握軟件測(cè)試的技術(shù)方法,組織和過程。
2 教學(xué)過程
我們的教學(xué)過程主要包括以下5個(gè)階段,最初的幾周主要講解軟件測(cè)試原理,同時(shí)這個(gè)階段學(xué)生主要完成指定項(xiàng)目,然后是4個(gè)主要的軟件測(cè)試技術(shù):單元測(cè)試,集成測(cè)試,功能測(cè)試和性能測(cè)試。軟件測(cè)試課程也會(huì)講解其他如回歸,壓力等其它測(cè)試技術(shù),下面是我們課程重點(diǎn)講授的內(nèi)容和要求。
2.1 軟件測(cè)試原理
本階段主要講授軟件測(cè)試技術(shù)的基本概念,使學(xué)生掌握基本的軟件測(cè)試原理。包括軟件測(cè)試的重要性,軟件評(píng)測(cè)師的職業(yè)規(guī)劃,軟件質(zhì)量的概念等基本概念,重點(diǎn)講授的內(nèi)容是白盒測(cè)試及用例的設(shè)計(jì)和黑盒測(cè)試及用例的設(shè)計(jì)兩個(gè)章節(jié)。白盒測(cè)試主要包括邏輯覆蓋和基本路徑覆蓋兩種用例設(shè)計(jì)方法,邏輯覆蓋又分為語句、判定、條件、判定/條件、組合、路徑覆蓋等。黑盒測(cè)試的重點(diǎn)內(nèi)容是等價(jià)類劃分,邊界值分析,因果圖,決策表和場(chǎng)景法。
本階段對(duì)學(xué)生的實(shí)踐要求是開發(fā)“大學(xué)圖書館管理系統(tǒng)”,由上課老師為學(xué)生統(tǒng)一提供系統(tǒng)的需求規(guī)格說明書,該系統(tǒng)的主要功能如圖1所示。要求學(xué)生結(jié)合對(duì)本校圖書借閱系統(tǒng)的使用和需求規(guī)格說明書,采用Java EE技術(shù)進(jìn)行開發(fā),系統(tǒng)采用典型的4層結(jié)構(gòu)進(jìn)行設(shè)計(jì),如圖2所示,即運(yùn)行在客戶端計(jì)算機(jī)上的客戶層組件、運(yùn)行在Java EE服務(wù)器上的Web層組件、業(yè)務(wù)層組件和運(yùn)行在EIS服務(wù)器上的企業(yè)信息系統(tǒng)(EIS)層軟件[4]。系統(tǒng)開發(fā)采用JSF+EJB3.0的架構(gòu),Glassfish為應(yīng)用服務(wù)器,MySql提供數(shù)據(jù)庫服務(wù)。
2.2 單元測(cè)試
單元測(cè)試是對(duì)軟件最小組成單元的測(cè)試,是軟件開發(fā)過程中進(jìn)行的最基本的測(cè)試。單元測(cè)試主要按照程序內(nèi)部的結(jié)構(gòu)測(cè)試程序,檢驗(yàn)程序中的每條通路是否都能按預(yù)定要求正確工作。單元測(cè)試主要考慮各個(gè)模塊接口的輸入和輸出,模塊內(nèi)部的數(shù)據(jù)結(jié)構(gòu),模塊的邊界條件,模塊的基本路徑和模塊的出錯(cuò)處理。單元測(cè)試階段還講授代碼規(guī)范性檢查,代碼覆蓋率的檢查,代碼復(fù)雜度的計(jì)算和內(nèi)存泄漏的檢查等。
完成單元測(cè)試的基本原理的學(xué)習(xí)后,要求學(xué)生交叉完成圖書館管理系統(tǒng)的單元測(cè)試,主要抽取系統(tǒng)中的核心函數(shù)進(jìn)行測(cè)試。完成測(cè)試后要求每個(gè)小組提供單元測(cè)試計(jì)劃,單元測(cè)試用例和單元測(cè)試報(bào)告3個(gè)報(bào)告文檔。得到所有報(bào)告后,組織一次課堂討論,展示優(yōu)秀小組的成果,分析原因總結(jié)經(jīng)驗(yàn)。單元測(cè)試工具要求采用JUnit,代碼規(guī)范和代碼質(zhì)量分析采用Logitscope, Pruify用于分析代碼的內(nèi)存問題。
2.3 集成測(cè)試
軟件各個(gè)單元通過單元測(cè)試之后,需要檢查各個(gè)單元之間的相互接口是否正確,就是集成測(cè)試。軟件集成測(cè)試主要考慮的問題是模塊間的數(shù)據(jù)傳遞是否正確,一個(gè)模塊的功能是否會(huì)對(duì)另一個(gè)模塊的功能產(chǎn)生錯(cuò)誤的影響,全局?jǐn)?shù)據(jù)結(jié)構(gòu)是否有問題,塊組合起來的功能是否能滿足要求,集成后累積誤差是否被放大等[5]。關(guān)于軟件集成測(cè)試的原則、策略和用例設(shè)計(jì)等相關(guān)原理可參考其它相關(guān)文獻(xiàn)。
教授完集成測(cè)試相關(guān)原理后,我們要求每個(gè)小組負(fù)責(zé)人組織完成系統(tǒng)的集成測(cè)試。集成測(cè)試以一個(gè)EJB、Servlet或者JSF為基本單元,工具選擇Cactus和HttpUnit。完成集成測(cè)試后要求每個(gè)小組提交集成測(cè)試計(jì)劃、集成測(cè)試設(shè)計(jì)文檔和集成測(cè)試分析報(bào)告。收齊所有小組成果,組織學(xué)生進(jìn)行討論。
2.4 功能測(cè)試
功能測(cè)試就是對(duì)產(chǎn)品的各功能進(jìn)行驗(yàn)證,根據(jù)功能測(cè)試用例,逐項(xiàng)測(cè)試,檢查產(chǎn)品是否達(dá)到用戶要求的功能。主要考慮系統(tǒng)的各個(gè)功能,一般從軟件產(chǎn)品的界面、架構(gòu)出發(fā),按照需求編寫測(cè)試用例,測(cè)試產(chǎn)品時(shí)是否達(dá)到用戶使用的需求。本階段主要讓學(xué)生采用WinRunner完成系統(tǒng)的功能測(cè)試,進(jìn)行功能測(cè)試之前首先完成測(cè)試計(jì)劃和測(cè)試用例的設(shè)計(jì)。然后完成WinRunner的6個(gè)步驟:識(shí)別程序的GUI,建立測(cè)試腳本,完善測(cè)試腳本,在新版應(yīng)用程序執(zhí)行測(cè)試腳本,分析測(cè)試結(jié)果和回報(bào)缺陷。
2.5 性能測(cè)試
典型的性能測(cè)試主要是從系統(tǒng)的響應(yīng)時(shí)間、吞吐量、系統(tǒng)資源利用率、并發(fā)用戶數(shù)、HTTP事務(wù)處理數(shù)/秒、會(huì)話數(shù)/秒和連接建立時(shí)間等方面衡量系統(tǒng)的性能。性能測(cè)試主要有壓力測(cè)試,容量測(cè)試和強(qiáng)度測(cè)試等。針對(duì)圖書館管理系統(tǒng)的特點(diǎn),我們要求學(xué)生理解性能測(cè)試的重要性和困難性,掌握性能測(cè)試的基本概念和技術(shù)。在此技術(shù)上,我們要求學(xué)生使用LoadRunner完成系統(tǒng)的壓力測(cè)試。主要步驟是測(cè)試需求分析,制定測(cè)試策略和方案(重點(diǎn)是設(shè)計(jì)測(cè)試場(chǎng)景),使用VuGen創(chuàng)建腳本,在Controller中創(chuàng)建場(chǎng)景,運(yùn)行場(chǎng)景,分析結(jié)果。完成后提交測(cè)試策略和方案報(bào)告,腳本和圖書館管理系統(tǒng)壓力測(cè)試報(bào)告。
3 結(jié)論
一個(gè)合格的軟件評(píng)測(cè)師要求具有編程能力、開發(fā)能力、溝通能力、管理能力、逆向思維能力等多種能力。怎樣在大學(xué)軟件測(cè)試技術(shù)教學(xué)中培養(yǎng)既有理論又能實(shí)踐的軟件測(cè)試從業(yè)人員是本文研究的動(dòng)機(jī)。我們提出的基于同一案例貫穿整個(gè)軟件測(cè)試技術(shù)教學(xué)過程的教學(xué)方法,通過學(xué)生互測(cè)對(duì)方開發(fā)的軟件系統(tǒng),相互對(duì)比,相互促進(jìn)同時(shí)組織課堂討論,有效營造了主動(dòng)學(xué)習(xí)的氣氛,增強(qiáng)了學(xué)生的學(xué)習(xí)積極性,培養(yǎng)了學(xué)生主動(dòng)思考問題的能力。該方法是一個(gè)值得借鑒的軟件測(cè)試技術(shù)教學(xué)方法。
參考文獻(xiàn):
[1] 李繪卓,唐峻,范勇.基于案例的軟件測(cè)試實(shí)驗(yàn)教學(xué)[J].電腦知識(shí)與技術(shù),2009,27(5):7820-7821.
[2] 屠紅蕾.軟件測(cè)試教學(xué)的點(diǎn)滴體會(huì)[J].計(jì)算機(jī)教育,2008(10):124-125.
[3] 李亞.“軟件測(cè)試”教學(xué)探索與實(shí)踐[J].計(jì)算機(jī)教育,2008(6):14-15.
軟件測(cè)試報(bào)告范文6
關(guān)鍵詞:軟件測(cè)試;性能測(cè)試;LoadRunner
中圖分類號(hào):TP306 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3198(2009)12-0296-02
1 軟件性能測(cè)試
根據(jù)測(cè)試的目的和內(nèi)容的不同,性能測(cè)試主要包括以下方面:
(1)負(fù)載測(cè)試:確定在各種工作負(fù)載下系統(tǒng)的性能,目標(biāo)是測(cè)試當(dāng)負(fù)載逐漸增加時(shí),系統(tǒng)各項(xiàng)性能指標(biāo)的變化情況。
(2)強(qiáng)度測(cè)試:確定在系統(tǒng)資源特別低的條件下軟件系統(tǒng)運(yùn)行情況。
(3)容量測(cè)試:在用戶可接受的響應(yīng)范圍內(nèi),確定系統(tǒng)可處理同時(shí)在線的最大用戶數(shù)。
(4)壓力測(cè)試:通過確定一個(gè)系統(tǒng)的瓶頸或者最大使用極限的測(cè)試。
(5)疲勞強(qiáng)度測(cè)試:以系統(tǒng)穩(wěn)定運(yùn)行情況下能夠支持的最大并發(fā)用戶數(shù)或者日常運(yùn)行用戶數(shù),持續(xù)執(zhí)行一段時(shí)間業(yè)務(wù),通過綜合分析交易執(zhí)行指標(biāo)和資源監(jiān)控指標(biāo)來確定系統(tǒng)處理最大工作強(qiáng)度性能的過程。
(6)大數(shù)據(jù)量測(cè)試:大數(shù)據(jù)量測(cè)試側(cè)重點(diǎn)在于數(shù)據(jù)的量上,包括獨(dú)立的數(shù)據(jù)量測(cè)試和綜合數(shù)據(jù)量測(cè)試。獨(dú)立的數(shù)據(jù)量測(cè)試針對(duì)某些系統(tǒng)存儲(chǔ),傳輸、統(tǒng)計(jì)、查詢等業(yè)務(wù)進(jìn)行大數(shù)據(jù)量測(cè)試,而綜合數(shù)據(jù)量測(cè)試一般和壓力性能測(cè)試、負(fù)載性能測(cè)試、疲勞性能測(cè)試相結(jié)合。
2 軟件性能測(cè)試流程
2.1 測(cè)試方案設(shè)計(jì)
在軟件性能測(cè)試的初始階段,首先應(yīng)對(duì)業(yè)務(wù)模型和系統(tǒng)架構(gòu)進(jìn)行調(diào)研,收集測(cè)試需求。然后生戚性能測(cè)試計(jì)劃。業(yè)務(wù)調(diào)研和系統(tǒng)調(diào)研,需要性能測(cè)試團(tuán)隊(duì)提前了解被測(cè)試項(xiàng)目的業(yè)務(wù)功能和系統(tǒng)架構(gòu)。其間。開發(fā)部門應(yīng)協(xié)助提供被測(cè)系統(tǒng)相關(guān)的文檔和說明,如系統(tǒng)總體介紹、系統(tǒng)規(guī)格書、用戶使用手冊(cè)、網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖和系統(tǒng)配置說明、關(guān)鍵服務(wù)器及應(yīng)用部署與配置等文檔。通過和業(yè)務(wù)部門協(xié)商明確本次測(cè)試針對(duì)哪些業(yè)務(wù)行為,制定此次測(cè)試的目標(biāo),細(xì)化測(cè)試的關(guān)注點(diǎn)和性能指標(biāo)要求。通過以上內(nèi)容制定詳細(xì)的測(cè)試方案,并制定詳細(xì)測(cè)試計(jì)劃和各階段目標(biāo)。
2.2 測(cè)試環(huán)境的搭建
測(cè)試環(huán)境的搭建分為軟硬測(cè)試系統(tǒng)的環(huán)境搭建和測(cè)試相關(guān)的數(shù)據(jù)準(zhǔn)備工作。環(huán)境搭建包括被測(cè)試系統(tǒng)的硬件環(huán)境建立和軟件應(yīng)用系統(tǒng)建立及基礎(chǔ)數(shù)據(jù)環(huán)境建立。保障被測(cè)試系統(tǒng)的業(yè)務(wù)可用性和功能的正確性,包括測(cè)試系統(tǒng)(如被測(cè)試項(xiàng)目的操作系統(tǒng)、中間件、數(shù)據(jù)庫、壓力測(cè)試控制臺(tái)、壓力測(cè)試發(fā)起工具等)的環(huán)境搭建、軟件的安裝;測(cè)試環(huán)境的網(wǎng)絡(luò)環(huán)境建立(如開放防火墻和網(wǎng)關(guān)等);最后進(jìn)行測(cè)試環(huán)境可用性驗(yàn)證。測(cè)試數(shù)據(jù)準(zhǔn)備包括測(cè)試應(yīng)用系統(tǒng)基礎(chǔ)數(shù)據(jù)準(zhǔn)備,即需要按性能測(cè)試規(guī)模要求,準(zhǔn)備足夠的、一定規(guī)模的基礎(chǔ)數(shù)據(jù),通常采用全量恢復(fù)生產(chǎn)數(shù)據(jù)的方式以達(dá)到和生產(chǎn)環(huán)境數(shù)據(jù)一致性的要求。
2.3 測(cè)試場(chǎng)景開發(fā)
測(cè)試場(chǎng)景開發(fā)指測(cè)試程序(腳本)的開發(fā)。測(cè)試程序(腳本)的開發(fā)是對(duì)被測(cè)系統(tǒng)的用戶業(yè)務(wù)行為進(jìn)行模擬、錄制、編程、參數(shù)化、腳本定制和調(diào)式等一系列工作,以使測(cè)試程序(腳本)可以真實(shí)模擬實(shí)際生產(chǎn)中的業(yè)務(wù)交易行為,并通過對(duì)程序中參數(shù)的配置實(shí)現(xiàn)對(duì)并發(fā)數(shù)、思考時(shí)間等屬性的準(zhǔn)確控制。
2.4 測(cè)試執(zhí)行
測(cè)試執(zhí)行是在測(cè)試方案的制定、測(cè)試環(huán)境準(zhǔn)備、測(cè)試場(chǎng)景開發(fā)工作正確完成的基礎(chǔ)上進(jìn)行的。
2.5 測(cè)試報(bào)告和分析
性能測(cè)試報(bào)告和結(jié)果分析是在測(cè)試執(zhí)行完成以后,對(duì)性能數(shù)據(jù)進(jìn)行采集結(jié)果收集工作和針對(duì)性能測(cè)試過程中暴露的問題進(jìn)行分析的階段。性能測(cè)試報(bào)告是對(duì)性能測(cè)試過程中的監(jiān)控結(jié)果以及報(bào)表進(jìn)行匯總,按照一定的模板整理出的一份結(jié)論性文檔。開發(fā)團(tuán)隊(duì)和性能測(cè)試團(tuán)隊(duì)?wèi)?yīng)依據(jù)對(duì)性能測(cè)試實(shí)施過程中監(jiān)控和記錄的數(shù)據(jù)和表格,分析系統(tǒng)中存在的性能問題和程序缺陷。并有針對(duì)性的在報(bào)告中闡述問題、分析原因、提出解決或優(yōu)化方案。
2.6 回歸測(cè)試
回歸測(cè)試是開發(fā)部門在性能測(cè)試報(bào)告的基礎(chǔ)上針對(duì)軟件的性能或者效率缺陷進(jìn)行優(yōu)化或者修復(fù),為了驗(yàn)證優(yōu)化的效果而進(jìn)行的再測(cè)試。
3 軟件性能測(cè)試工具LoadRunner
作為軟件質(zhì)量控制中的重要一環(huán),性能測(cè)試已經(jīng)越來越受到軟件開發(fā)商和用戶的重視,成為軟件測(cè)試的重中之重。性能測(cè)試通常在系統(tǒng)測(cè)試階段執(zhí)行,常常與強(qiáng)度測(cè)試結(jié)合起來,一般需要使用測(cè)試工具。一個(gè)優(yōu)秀的軟件測(cè)試工具,不僅可以輔助測(cè)試工作,滿足科學(xué)測(cè)試的基本要求;而且可以自動(dòng)化測(cè)試過程,節(jié)約大量的時(shí)間、成本、人員和資源,提高軟件產(chǎn)品的質(zhì)量。目前市場(chǎng)上主要使用的測(cè)試工具有微軟公司的WAS(Web Application Stress Tool)、Compuware公司的QALoad、RadView公司的WebRunner、HP(Mercury)公司的LoadRunner。下面以LoadRunner為例。介紹軟件測(cè)試工具的工作流程。
LoadRunner是一種預(yù)測(cè)系統(tǒng)行為和性能的負(fù)載測(cè)試工具。通過模擬上千萬用戶實(shí)施并發(fā)負(fù)載及實(shí)時(shí)性能檢測(cè)來確認(rèn)和查找問題,能夠?qū)φ麄€(gè)企業(yè)架構(gòu)進(jìn)行測(cè)試。通過使用LoadRunner,企業(yè)能夠最大限度的縮短測(cè)試時(shí)間,優(yōu)化性能和加速應(yīng)用系統(tǒng)的周期。LoadRunner能支持廣泛的協(xié)議和技術(shù),功能比較強(qiáng)大,可以為特殊環(huán)境提供特殊的解決方案。LoadRunner由下面三部分組成:Virtual UserGenerator用來錄制腳本、編輯腳本Controller用來布置測(cè)試場(chǎng)景、執(zhí)行測(cè)試場(chǎng)景;Analysis用來對(duì)測(cè)試結(jié)果進(jìn)行分析。
用LoadRunner進(jìn)行負(fù)載測(cè)試的流程通常由五個(gè)階段組成:計(jì)劃、腳本創(chuàng)建、場(chǎng)景定義、場(chǎng)景執(zhí)行、監(jiān)視執(zhí)行和結(jié)果分析。
(1)計(jì)劃負(fù)載測(cè)試:定義性能測(cè)試要求,例如并發(fā)用戶的數(shù)量、典型業(yè)務(wù)流程和所響應(yīng)時(shí)間;根據(jù)軟件項(xiàng)目相關(guān)需求,定義相關(guān)測(cè)試的細(xì)節(jié),撰寫性能測(cè)試報(bào)告。
(2)創(chuàng)建Vuser腳本:將最終用戶活動(dòng)捕獲到自動(dòng)腳本中LoadRunner的腳本是C語言代碼,LoadRunner有自己的一整套函數(shù)接口,可以供外部調(diào)用。腳本可分INIT、ACTION、END三部分,其中:INIT部分可以理解為初始部分。ACTION可以理解為事務(wù)部分,也是測(cè)試的主體,END是退出結(jié)束。
當(dāng)錄制完一個(gè)基本的用戶腳本后,在正式使用前我們還需要完善測(cè)試腳本,增強(qiáng)腳本的靈活性。一般情況下,我們通過以下幾種方法來完善測(cè)試腳本。插人事務(wù)、插入結(jié)合點(diǎn)、插入注解、參數(shù)化輸入。
(3)定義場(chǎng)景:使用LoadRunner Controller設(shè)置測(cè)試環(huán)境;錄制好腳本之后,就可以把腳本加入到場(chǎng)景里面去了,這里首先介紹一下LR的場(chǎng)景類型,LR有2種大的場(chǎng)景類
型。
①M(fèi)anual Scenario:該項(xiàng)要完全手動(dòng)的設(shè)置場(chǎng)景,這項(xiàng)下面還可以設(shè)置為每一個(gè)腳本分配要運(yùn)行的虛擬用戶的百分比,可在Controller的Scenario菜單下設(shè)置。
②Goal―Oriented Scenario,如果你的測(cè)試計(jì)劃是要達(dá)到某個(gè)性能指標(biāo),比如:每秒多少點(diǎn)擊。每秒多少transae,tions,能到達(dá)多少VU,某個(gè)Transaction在某個(gè)范圍VU(5D。一1000)內(nèi)的反應(yīng)時(shí)間等等,那么就可以使用面向目標(biāo)的場(chǎng)景。
(4)設(shè)置場(chǎng)景:
Design:設(shè)計(jì)測(cè)試場(chǎng)景的靜態(tài)部分,設(shè)置模擬用戶生成器、模擬用戶數(shù)量、模擬用戶組等。
Run:設(shè)計(jì)測(cè)試的動(dòng)態(tài)部分,主要指添加性能計(jì)數(shù)器,在腳本運(yùn)行的過程中可以通過這些計(jì)數(shù)器反饋的數(shù)據(jù)。
建立了測(cè)試場(chǎng)景后,我們可以對(duì)Edit_Schedule進(jìn)行設(shè)置,設(shè)置測(cè)試開始執(zhí)行的時(shí)問,對(duì)于手動(dòng)設(shè)計(jì)的測(cè)試還可以設(shè)定它的持續(xù)時(shí)間,以及何時(shí)起用或禁止調(diào)用模擬用戶。
(5)運(yùn)行場(chǎng)景:通過LoadRunner Controller驅(qū)動(dòng)、管理和監(jiān)控負(fù)載測(cè)試。
設(shè)置完畢后,點(diǎn)擊“開始方案”運(yùn)行場(chǎng)景。在運(yùn)行過程中,可以監(jiān)視各個(gè)服務(wù)器的運(yùn)行情況(DataBase Server、WebServer等)。監(jiān)視場(chǎng)景通過添加性能計(jì)數(shù)器來實(shí)現(xiàn),下列數(shù)據(jù)需要特別關(guān)注:
①M(fèi)emory:Available Mbytes物理內(nèi)存的可用數(shù)(單位Mbytes)至少要有10%的物理內(nèi)存值。
⑦Processor:Processor Time CPU使用率。這是查看處理器飽和狀況的最佳計(jì)數(shù)器。顯示所有CPU的線程處理時(shí)間。如果一個(gè)或多個(gè)處理器的該數(shù)值持續(xù)超過90%,則表示此測(cè)試的負(fù)載對(duì)于目前的硬件過于沉重。為多處理器服務(wù)器添加該計(jì)數(shù)器的O到x個(gè)實(shí)例。
③Processor Queue Length:是指處理列隊(duì)中的線程數(shù),小于2。處理器瓶頸時(shí)會(huì)導(dǎo)致該值持續(xù)大于2。
④Context Switches/sec;如果切換次數(shù)到5000*CPU個(gè)數(shù)和i0000*CPU個(gè)數(shù)中,說明它忙于切換線程。
⑤Network Interface:Bytes Total/sec為發(fā)送和接收字節(jié)的速率,包括幀字符在內(nèi)。判斷網(wǎng)絡(luò)連接速度是否是瓶頸,可以用該計(jì)數(shù)器的值和目前網(wǎng)絡(luò)的帶寬比較。