寧華 劉煜
摘要:從20世紀(jì)40年代,電子計(jì)算機(jī)問(wèn)世以來(lái),人們對(duì)其的依賴也越來(lái)越強(qiáng)。軟件技術(shù)發(fā)展至今,軟件測(cè)試技術(shù)已經(jīng)成為了軟件開發(fā)過(guò)程中不可缺少的一部分。隨著軟件開發(fā)難度日益提高、團(tuán)隊(duì)規(guī)模日益壯大、開發(fā)過(guò)程日益細(xì)致,軟件測(cè)試的重要性也日益突出。測(cè)試技術(shù)是軟件開發(fā)中的重要環(huán)節(jié),是軟件質(zhì)量的重要保障手段,可以大大減少軟件缺陷,提高軟件質(zhì)量和軟件的可信度。
關(guān)鍵詞:軟件測(cè)試;功能測(cè)試;性能測(cè)試
1 前言
從20世紀(jì)60年代,為了證明軟件的正確性而產(chǎn)生了軟件測(cè)試,從初期的程序調(diào)試到現(xiàn)在的各類測(cè)試。軟件測(cè)試技術(shù)也在越來(lái)越完善,越來(lái)越規(guī)范。
1972年舉行了首屆軟件測(cè)試正式會(huì)議;1979年,正式對(duì)軟件測(cè)試進(jìn)行了定義;1983年,測(cè)試是對(duì)軟件質(zhì)量的度量;1996年,提出測(cè)試能力成熟度TCMM;從此,軟件測(cè)試工具盛行起來(lái),軟件測(cè)試進(jìn)入了高速發(fā)展,不斷完善的新進(jìn)程。
2 軟件測(cè)試
2.1 軟疾測(cè)試定義
所謂測(cè)試,就是以檢驗(yàn)產(chǎn)品是否滿足需求。而軟件測(cè)試,是為了發(fā)現(xiàn)軟件(產(chǎn)品)的缺陷而運(yùn)行軟件(產(chǎn)品)的活動(dòng)。
軟件測(cè)試發(fā)展至今,針對(duì)其定義出現(xiàn)過(guò)很多的版本。其中較標(biāo)準(zhǔn)的定義是:在規(guī)定的條件下對(duì)程序進(jìn)行操作,以發(fā)現(xiàn)錯(cuò)誤,對(duì)軟件質(zhì)量進(jìn)行評(píng)估的活動(dòng)。
IEEE標(biāo)準(zhǔn)定義:使用人工或自動(dòng)的手段來(lái)運(yùn)行或測(cè)定某個(gè)系統(tǒng)的過(guò)程,其目的在于檢驗(yàn);它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。
G.J.Myers給出的定義:“程序測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程”。
要完整地理解軟件測(cè)試,就要從不同方面和視角去辨證地審視軟件測(cè)試。概括而言,軟件測(cè)試就是貫穿整個(gè)軟件開發(fā)生命周期、對(duì)軟件產(chǎn)品進(jìn)行驗(yàn)證和確認(rèn)的活動(dòng)過(guò)程,其目的是盡快盡早地發(fā)現(xiàn)在軟件產(chǎn)品中存在的各種問(wèn)題和與用戶需求、預(yù)先定義不一致的地方。
2.2 軟件剛試目的
軟件測(cè)試是程序的一種執(zhí)行過(guò)程,目的是盡可能發(fā)現(xiàn)并改正被測(cè)試軟件中的錯(cuò)誤,提高軟件的可靠性。它是軟件生命周期中一項(xiàng)非常重要的工作,對(duì)軟件可靠性保證具有極其重要的意義。在目前形式化方法和程序正確性證明技術(shù)還無(wú)望成為實(shí)用性方法的情況下,軟件測(cè)試在將來(lái)相當(dāng)一段時(shí)間內(nèi)仍然是軟件可靠性保證的有效方法。
2.3 軟件測(cè)試分類
軟件缺陷在開發(fā)前期發(fā)現(xiàn)比在開發(fā)后期發(fā)現(xiàn)節(jié)約90%成本;軟件缺陷在推向市場(chǎng)前發(fā)現(xiàn)比在推出后發(fā)現(xiàn)節(jié)約90%成本。因此軟件的缺陷應(yīng)該盡早發(fā)現(xiàn)。但不是所有的軟件都要進(jìn)行任何類型的軟件測(cè)試的,可以根據(jù)產(chǎn)品的具體情況進(jìn)行不同類型的測(cè)試,測(cè)試的分類如下:
按運(yùn)行狀態(tài)分:動(dòng)態(tài)測(cè)試、靜態(tài)測(cè)試;
按執(zhí)行過(guò)程分:手工測(cè)試、自動(dòng)化測(cè)試;
按內(nèi)容分:功能測(cè)試、性能測(cè)試、兼容性測(cè)試,Ul測(cè)試、文檔測(cè)試等;
按測(cè)試用例技術(shù)分:黑盒測(cè)試、白盒測(cè)試、灰盒測(cè)試;
按開發(fā)階段分:?jiǎn)卧獪y(cè)試、集成測(cè)試、系統(tǒng)測(cè)試、驗(yàn)收測(cè)試;
按組織方分:Alpha測(cè)試、Beta測(cè)試、第三方測(cè)試;
其他測(cè)試方法:隨機(jī)測(cè)試、冒煙測(cè)試、回歸測(cè)試、恢復(fù)測(cè)試等; 藏鑫粼鼎擎裂過(guò)程中管理,測(cè)試工作可以分為如下的5個(gè)階段:
(1)計(jì)劃階段:編寫測(cè)試計(jì)劃,制定整體測(cè)試方案。
(2)設(shè)計(jì)階段:主要編寫測(cè)試用例。
(3)執(zhí)行階段:搭建測(cè)試環(huán)境,執(zhí)行測(cè)試、記錄跟蹤測(cè)試bug.
(4)評(píng)估階段:測(cè)試報(bào)告,對(duì)整體過(guò)程做總結(jié),對(duì)質(zhì)量評(píng)估。
(5)驗(yàn)收階段:完成用戶操作手冊(cè)等,保證每一步輸出的有效。
2.5 軟件測(cè)試工具
軟件測(cè)試工具是通過(guò)一些工具能夠使軟件的一些簡(jiǎn)單問(wèn)題直觀的顯示在讀者的面前,這樣能使測(cè)試人員更好的找出軟件錯(cuò)誤的所在。軟件測(cè)試工具分為自動(dòng)化軟件測(cè)試工具和測(cè)試管理工具。具體工具如下:
軟件測(cè)試管理工具:Bugfree、TestLink、禪道等。
軟件功能自動(dòng)化測(cè)試工具:Watir、Selenium、MaxQ、Weblnject、QTP等。
軟件性能目動(dòng)化測(cè)試工具:Jmeter、ODenSTA、TPTEST、LoadRunner等。
其他測(cè)試工具與框架:Rational Functional Tester、WinRunner、Robot等。
使用較為廣泛的工具有:
(1)禪道:功能比較全面的測(cè)試管理工具,功能涵蓋軟件研發(fā)的全部生命周期,為軟件測(cè)試和產(chǎn)品研發(fā)提供一體化的解決方案。是一款優(yōu)秀的國(guó)產(chǎn)開源測(cè)試管理工具。
(2)Quality Center:基于Web的測(cè)試管理工具,可以組織和管理應(yīng)用程序測(cè)試流程的所有階段,包括指定測(cè)試需求、計(jì)劃測(cè)試、執(zhí)行測(cè)試和跟蹤缺陷。
(3)QuiekTest Professional:用于創(chuàng)建功能和回歸測(cè)試。
(4)LoadRunner:預(yù)測(cè)系統(tǒng)行為和性能的負(fù)載測(cè)試工具。
3 結(jié)束語(yǔ)
在具體工作過(guò)程中,測(cè)試工程師的工作是利用測(cè)試工具按照測(cè)試方案和流程對(duì)產(chǎn)品進(jìn)行功能和性能測(cè)試,甚至根據(jù)需要編寫不同的測(cè)試用例,設(shè)計(jì)和維護(hù)測(cè)試系統(tǒng),對(duì)測(cè)試方案可能出現(xiàn)的問(wèn)題進(jìn)行分析和評(píng)估。對(duì)軟件測(cè)試工程師而言,必須具有高度的工作責(zé)任心和自信心。任何嚴(yán)格的測(cè)試必須是一種實(shí)事求是的測(cè)試,因?yàn)樗P(guān)系到一個(gè)產(chǎn)品的質(zhì)量問(wèn)題,而測(cè)試工程師則是產(chǎn)品出交付前的把關(guān)人,所以,沒有專業(yè)的技術(shù)水準(zhǔn)是無(wú)法勝任這項(xiàng)工作的。
參考文獻(xiàn)
[1]王軼辰,軟件測(cè)試從入門到精通.
[2]辛慶,基于Selenium的Web UI自動(dòng)化測(cè)試[D]2012.
[3]杜麗潔,基于QTP自動(dòng)化3111試框架的開發(fā)與應(yīng)用[D],2012.