張瑩 曲艷梅
摘 要:針對軟件測試課程教學(xué)中缺乏系統(tǒng)實(shí)例、重技術(shù)實(shí)現(xiàn)輕文檔工作、測試工具使用流于產(chǎn)品說明等問題,文章就探索實(shí)驗(yàn)教學(xué)進(jìn)度和內(nèi)容進(jìn)行了論述。依據(jù)實(shí)際軟件開發(fā)過程中軟件測試實(shí)施的方式方法,提出設(shè)計(jì)一套系統(tǒng)的軟件測試實(shí)驗(yàn)內(nèi)容。文章還闡述了在教學(xué)過程中采用案例教學(xué)法,提供給學(xué)生完整的案例系統(tǒng)及充分的設(shè)計(jì)文檔.統(tǒng)計(jì)功能,測試計(jì)劃。測試應(yīng)該跨越整個(gè)軟件開發(fā)流程。需求驗(yàn)證(自檢)和設(shè)計(jì)驗(yàn)證(自檢)也可以算作軟件測試(建議稱為需求測試和設(shè)計(jì)測試)的一種。軟件測試應(yīng)該是一個(gè)泛型概念,涵蓋整個(gè)軟件生命周期,這樣才能確保周期的每個(gè)階段都禁得起考驗(yàn)。同時(shí)測試本身也需要有第三者進(jìn)行評估(信息系統(tǒng)審計(jì)和軟件工程監(jiān)理),即測試本身也應(yīng)當(dāng)被測試,從而確保測試自身的可靠性和高效性。否則自身不正,難以服人。
關(guān)鍵詞:測試管理教學(xué);測試實(shí)習(xí)性教學(xué);測試管理系統(tǒng)
軟件開發(fā)和使用的歷史已經(jīng)留給了我們很多由于軟件缺陷而導(dǎo)致巨大財(cái)力、物力損失的經(jīng)驗(yàn)教訓(xùn)。這些經(jīng)驗(yàn)教訓(xùn)迫使我們必須采取強(qiáng)有力的檢測措施來檢測未發(fā)現(xiàn)的隱藏軟件缺陷。生產(chǎn)軟件的最終目的是為了滿足客戶需求,我們以客戶需求作為評判軟件質(zhì)量的標(biāo)準(zhǔn),認(rèn)為軟件缺陷(Software Bug)的具體含義包括下面幾個(gè)因素:
軟件未達(dá)到客戶需求的功能和性能。
軟件超出客戶需求的范圍。
軟件出現(xiàn)客戶需求不能容忍的錯(cuò)誤。
軟件的使用未能符合客戶的習(xí)慣和工作環(huán)境。
考慮到設(shè)計(jì)等方面的因素,我們還可以認(rèn)為軟件缺陷包括軟件設(shè)計(jì)不符合規(guī)范、未能在特定的條件(資金、范圍等)達(dá)到最佳等??上У氖?,很多人更傾向于把軟件缺陷看成運(yùn)行時(shí)出現(xiàn)的問題,認(rèn)為軟件測試僅限于程序提交之后。在目前的國內(nèi)環(huán)境下,幾乎看不到完整準(zhǔn)確的客戶需求說明書,再加上客戶的需求時(shí)時(shí)在變,追求完美的測試變得不太可能。但是明確軟件測試現(xiàn)實(shí)與理想的差距,在軟件測試中學(xué)會(huì)取舍和讓步,對軟件測試是有百益而無一弊的。
軟件測試并不單純等同于程序測試。軟件測試應(yīng)該貫穿整個(gè)軟件定義與整個(gè)開發(fā)周期。因此需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)以及程序編碼等各階段所得到的文檔,包括需求規(guī)格說明、概要設(shè)計(jì)規(guī)格說明、詳細(xì)設(shè)計(jì)規(guī)格說明以及源程序,都應(yīng)該是軟件測試(評審)的對象。
在對需求理解與表達(dá)的正確性、設(shè)計(jì)與表達(dá)的正確性、實(shí)現(xiàn)的正確性以及運(yùn)行的正確性的驗(yàn)證中,任何一個(gè)環(huán)節(jié)發(fā)生了問題都可能在軟件測試中表現(xiàn)出來。
在這部分中,我個(gè)人確保每個(gè)階段功能的實(shí)現(xiàn),在系統(tǒng)完成后,每個(gè)分支都走過一遍,也有發(fā)現(xiàn)的問題,但都通過查閱資料將其解決了。
性能測試
測量Web服務(wù)器的性能是一項(xiàng)讓人感到畏縮的任務(wù),它不像一些簡單的任務(wù),如測量CPU的速率或者是測量程序占用CPU的比例,Web服務(wù)器的性能優(yōu)化中包括調(diào)整許多變量來達(dá)到目標(biāo)。許多的測量策略中都包含了一個(gè)看似簡單的瀏覽,實(shí)際上是在向服務(wù)器發(fā)送大量的請求,這稱之為客戶端的程序,它用來測量響應(yīng)時(shí)間。常見的問題有如下幾個(gè):
客戶端和服務(wù)器端是否在同一臺(tái)機(jī)器上。
服務(wù)器在測試的時(shí)候是否還運(yùn)行著其他的程序。
客戶端和服務(wù)器端的通信是通過局域網(wǎng)(100baseT、10baseT)還是使用調(diào)制解調(diào)器。
客戶端是否一直重復(fù)請求相同的頁面,還是隨機(jī)地訪問不同的頁面。
客戶端發(fā)送請求是有規(guī)律的還是突發(fā)的。
是在最終的配置環(huán)境下運(yùn)行服務(wù)的,還是在調(diào)試的配置環(huán)境下運(yùn)行服務(wù)的。
客戶端的請求中包含圖片還是只有HTML頁面。
所有這些都是要關(guān)心的問題,并且?guī)缀醪豢赡芫_地把所有的問題都列出來。
基于以上的要求,最合適的測試方法無非是通過一定的訪問量來實(shí)現(xiàn),但是這樣的工作談何容易,這種思路的測試就是壓力測試。俗話說:“工欲善其事,必先利其器”,壓力測試只有借助于一些工具才可得以實(shí)施。大多數(shù)Web壓力測試工具的實(shí)現(xiàn)原理都是通過重復(fù)的大量頁面請求來模擬多用戶對被測系統(tǒng)的并發(fā)訪問,以此達(dá)到產(chǎn)生壓力的目的。產(chǎn)生壓力的手段都是通過錄制或者是編寫壓力腳本,這些腳本以多個(gè)進(jìn)程或者線程的形式在客戶端運(yùn)行,這樣通過人為制造各種類型的壓力,可以觀察被測系統(tǒng)在各種壓力狀況下的表現(xiàn),從而定位系統(tǒng)瓶頸,作為系統(tǒng)調(diào)優(yōu)的基礎(chǔ)。目前已經(jīng)存在的性能測試工具林林總總,數(shù)量不下一百種,從單一的開放源碼的免費(fèi)小工具,如Apache自帶的Web性能測試工具(Apache Benchmark、開源的JMeter)到大而全的商業(yè)性能測試軟件,如Mercury的LoadRunner、Siege等。
系統(tǒng)測試分為功能測試和性能測試兩部分。為了驗(yàn)證本系統(tǒng)的各項(xiàng)功能是否滿足設(shè)計(jì)要求,是否符合用戶需求,是否存在錯(cuò)誤;本文分別做了功能測試和性能測試。
測試環(huán)境
為了保證呈現(xiàn)給終端用戶的界面一致性,功能測試環(huán)境選用了IE瀏覽器、火狐瀏覽器、谷歌瀏覽器、遨游瀏覽器、搜狗瀏覽器。性能測試主要使用自動(dòng)化測試工具Load Runner進(jìn)行測試。
測試環(huán)境詳細(xì)信息見表5-3。
表5-3開放式實(shí)習(xí)教學(xué)管理系統(tǒng)測試環(huán)境信息表
(1)功能測試:測試系統(tǒng)實(shí)現(xiàn)的功能。
通過使用不同瀏覽器訪問系統(tǒng)網(wǎng)站,進(jìn)行認(rèn)證登陸;運(yùn)行各項(xiàng)管理功能、操作,觀察操作后現(xiàn)象、過程、結(jié)果,判斷是否滿足設(shè)計(jì)要求和用戶需求。如出現(xiàn)錯(cuò)誤或應(yīng)用不滿足實(shí)際需求,則記錄相關(guān)信息;本輪測試結(jié)束后加以修改,修改完畢繼續(xù)測試,直到所有功能測試通過后才可最終結(jié)束測試。
(2)性能測試:測試系統(tǒng)性能指標(biāo)。
通過Load Runner工具進(jìn)行測試,得出客觀數(shù)據(jù)。針對系統(tǒng)服務(wù)的特點(diǎn),分析這些數(shù)據(jù)表達(dá)出的信息,確定系統(tǒng)響應(yīng)時(shí)間是否及時(shí)、準(zhǔn)確;服務(wù)器端資源消耗是否合理。服務(wù)器端指標(biāo)包括并發(fā)性、吞吐量、內(nèi)存占用率、數(shù)據(jù)庫服務(wù)器CPU占用情況等。如性能指標(biāo)達(dá)不到設(shè)計(jì)要求,分析出問題具體原因,是系統(tǒng)設(shè)計(jì)問題還是硬件配置問題,最終改正達(dá)到系統(tǒng)要求指標(biāo),結(jié)束測試。
參考文獻(xiàn):
[1]湯振華.淺談高等院校素質(zhì)教育現(xiàn)狀(J).高校論壇,2013,1(7):104-108.
[2]侯云霞,于金秀.高校思想政治理論課教學(xué)實(shí)習(xí)與實(shí)習(xí)教學(xué)思考(J).中國特色社會(huì)主義研究,2008,2(10):159.
[3]徐威軍.高等師范院校開放實(shí)習(xí)教學(xué)管理問題研究(D).東北師范大學(xué),2010:4-5.
作者簡介:張? 瑩(1975-),女,黑龍江人,實(shí)驗(yàn)師,工程碩士,研究方向:計(jì)算機(jī)技術(shù)
曲艷梅(1980-),女,黑龍江人,講師,研究方向:計(jì)算機(jī)技術(shù)