999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

軟件測試自動化應用分析

2011-02-19 07:48:46偉,李波,何
制造業自動化 2011年2期

馮 偉,李 波,何 倩

FENG Wei,LI Bo,HE Qian

(唐山學院,唐山 063020)

0 引言

軟件測試是軟件生命周期的一個重要階段,測試質量的好壞,直接決定著軟件產品能否穩定運行。軟件測試中的自動化測試技術是目前有待進一步發展的技術,因為軟件測試的工作量非常大(大約占總體開發時間的40%到50%),而其中又有大部分工作適合自動化,因此,測試的改進會對整個軟件項目開發工作的成本、質量和周期帶來非常明顯的效果。

1 傳統軟件測試存在的問題

在軟件開發過程中,首先要求我們通過測試驗證所開發的軟件在功能上滿足需求分析中的描述,性能上滿足客戶要求的承載負荷和相應的響應時間、運算量要求;另一方面,工作人員還要在預算范圍內盡早發布軟件以便減少開支。

傳統的軟件測試流程一般是先在軟件開發過程中進行少量的單元測試,然后在整個軟件開發結束階段,集中進行大量的測試,包括功能和性能的集成測試和系統測試[1]。由于軟件項目越來越復雜,這種軟件測試的流程給項目開發者帶來以下問題:

1)項目進程較難把握

項目管理難度加大,許多的軟件錯誤往往到了軟件測試后期才被發現,此時解決問題耗費的代價很難估算,從而使項目進程無法控制,另外在軟件設計過程中,相關人員無法準確了解軟件的質量狀況,無形中增大了項目管理和開發的難度。

2)項目風險較難控制

項目風險在開發的后期才能得以降低。通常在測試人員進行了系統測試以后,方能確定整個開發過程能否滿足用戶在系統功能、性能和可靠性方面的需求。

3)項目開發經費超出預期

在整個項目開發周期中,錯誤發現的越晚,修復成本越高,此時對問題解決地不及時將導致整個項目成本的快速增加。

2 軟件自動化測試的分析

2.1 軟件自動化測試的定義

目前,對于軟件自動化測試的常規定義為“使用一種自動化測試工具來驗證各種軟件測試的需求,它包括測試活動的管理與實施。”

通常,我們所進行的自動化測試指的是自動化測試一個已經使用了正式的測驗流程的手工過程[2]。

2.2 引入軟件測試自動化的原因

通常,軟件測試中有許多是重復性的、非智力性的和非創造性的操作,通過計算機就可以代替人工去完成這樣的任務,使程序員從紛繁復雜的同一化工作中解脫出來,轉而進行更深層次的項目測試工作。

軟件自動化測試是基于手工測試而存在的,主要通過相應的軟件測試工具、腳本等來實現,具有較好的可操作性、可重復性和高效率等特點。

自動化測試的測試效率高,成本低廉,可將重復性強的測試由手工轉為計算機自動實現;非常適合快速的回歸測試,改變人工測試很難對新的迭代版本作出快速評估的局面;避免人工測試容易犯的錯誤,并且對非常耗費時間的邊界值測試,可以快速準確的進行對多用戶的并發操作等人工測試很難實現的操作,自動測試很容易就可以完成。

因此,測試自動化的實施是軟件測試行業一個發展方向,如果掌握了這個領域的先進技術,對于一個軟件企業的核心競爭力和未來的發展,都有巨大的推動作用。

2.3 常見的軟件自動化測試工具

單元測試 Java測試工具:JUnit功能級測試Mercury Interactive公司的WinRunner,QuickTest Pro,IBM Rational公司的Rational Robot,Rational Xde Tester,Compuware公司的QARun,RadView公司的WebFT,Empirix公司的e-Tester等壓力測試 Mercury Interactive公司的Winload,Compuware公司的QALoad負載測試 Mercury Interactive公司的LoadRunner Web測試工具 Empirix公司的e-Test Suite Web系統測試工具 MicroSoft公司的Web Application Stress Tool回歸測試 Rational公司的 Team Test性能測試Mercury Interactive公司的Loadrunner,Compuware公司的QALoad,MicroSoft公司的Web Application Stress Tool等測試流程管理工具IBM Rational公司的Rational Testmanager,Mercury Interactive公司的TestDirector缺陷跟蹤工具 Compuware公司的高級變更和缺陷管理工具:TrackRecord白盒測試IBM Rational公司的Rational Purifyplus,Compuware公司的DevPartner Studio Professional Edition黑盒測試 QACenter,SQATeamtest,Rational Visual Test

2.4 測試腳本的設計

腳本是一組由測試工具執行的代碼集合,可以通過錄制測試的操作產生,然后再做修改,這樣可以減少腳本編程的工作量。當然,也可以直接用腳本語言編寫腳本。腳本技術可以分為線性腳本、結構化腳本、共享腳本、數據驅動腳本和關鍵字驅動腳本幾類。編輯腳本的原則就是盡量覆蓋更多的測試項,兼容性更強一些,使得測試新項目時能很容易繼承和修改原有的腳本,減輕后續的工作量。

3 軟件自動化測試流程的改進

3.1 確定要測試的產品進行自動化測試的可行性

自動化測試能提高測試效率,但對于周期短、時間緊迫的項目不宜采用自動化測試。推行自動化測試的前期工作相當龐大,將企業級自動化測試框架應用到一個項目中也要評估其合適性,因此決不能盲目地應用到一個測試項目中,尤其不適合周期短的項目,因為非常可能需要大量的測試框架的準備和實施而會被拖跨。

比如進行一個單元測試自動化,如果開發了上百行的測試代碼去測試一個代碼行僅為10行的函數,我們先不考慮自動化測試開發之后的維護成本,但是至少可以有一個直觀的認識:從手工測試向自動化測試的轉變是要付出的成本的,而且這個投入要遠比做一次手工測試的代價要高,所以必須首先要確定對一個軟件項目進行自動化測試是否合適。

3.2 對測試的軟件項目進行風險評估

資金風險,雖然有些項目具備實施自動化測試的條件,但還是要引入自動化測試后組織結構調整等方面的成本估算是很必要的。

切入方式的風險,一定要將自動化測試與手工測試結合起來使用,設計合理的配比使測試能夠順利進行。開始可以設置80%的測試采用手工測試,當這些目標都實現了,再將自動化測試率提高。

時間估算,在評估完前面幾項指標后,需要估算實施測試自動化的時間周期,以防止浪費不必要的時間,減少在人員、資金、資源投入上的無端消耗。雖然到測試自動化步入正軌以后,會起到事半功倍的效果,但前期的投入巨大,要全面考慮各種因素,明確實施計劃并按計劃嚴格執行,才能最大限度降低風險。

工作流程變更風險,測試團隊乃至整個開發組織實施測試自動化,或多或少會因為適應測試工具的工作流程,帶來團隊的測試流程、開發流程的相應變更,而且,如果變更不合理,會引起團隊成員的諸多抱怨情緒,所以應該盡量減少這種變更,并克服變更中可能存在的困難。

3.3 制定周密的測試計劃

測試計劃包括測試環境的建立、確定測試策略、測試設計流程控制和容錯處理等。

根據開發的軟件項目特點,制定完善的計劃,設計好測試的各個步驟,由于自動化測試對軟件的設計質量要求比較高,另外對突發事件和不能由軟件解決的問題就無能為力,所以事先應確定出現測試異常情況時解決問題的方案,能較快地將問題解決,減少不必要的開銷。

3.4 結合手工測試和自動化測試兩種方案

測試自動化可以帶來非常明顯的收益,但是不能完全依賴于自動測試,它只是測試工作的一部分,是對人工測試的一種補充。自動化測試絕不能代替手工測試,它們各有各自的特點,其測試對象和測試范圍都不一樣。根據報道,自動化測試只能發現15%的缺陷,而手工測試可以發現85%的缺陷。在進行自動化測試前,首先要建立一個對軟件測試自動化的認識觀。單元測試、集成測試、系統負載測試、性能測試、穩定性測試、可靠性測試等比較適合采用自動化測試。對于那種不穩定軟件的測試、開發周期很短的軟件、一次性的軟件等不適合自動化測試。我們可以根據實際情況進行選擇。多數情況下,手工測試和自動化測試應該相結合,以最有效的方法來完成測試任務。

自動化測試工具在進行功能測試時,其準確的含義是回歸測試工具,這時工具不能發現更多的新問題,但可以保證對已經測試過部分的準確性和客觀性。

3.5 總結軟件自動化測試的過程

將整個測試過程進行記錄,總結過程中的經驗和教訓,生成測試報告,找出解決同類問題的思路和方法,以便以后測試類似的軟件項目時能重復利用前面取得的成果,如果有條件的話,在測試的基礎上設計相關的測試模板,如果以后有類似架構的軟件項目的話,可以沿用前面的這種模式進行測試,從而大大地提高測試的效率。

4 結束語

總之,軟件項目的自動化測試在國內的發展還不是很成熟,沒有真正地形成一整套合理有效的規范。在實際應用中,我們要結合傳統的手工測試和自動化測試兩種方法的特點,發揮它們的優勢,讓自動化測試策略及工具的實現成為測試人員手中的一件利器,把他們從枯燥的重復性工作中解脫出來,將更多精力和時間專注于需要智能判斷的復雜工作和其他新的測試用例。另外,我們要避免將自動化測試和測試人員等同起來,不要對自動化測試要求過高。我們要對自動化測試樹立一個正確的觀感,清醒地認識到自動化測試是人工測試的有力補充,而無法取代測試人員的地位。任何單一的技術或操作方式上的進步,都不能獨立地保證在短時間內大規模地提高軟件的開發效率、穩定性和可維護性。自動化測試也是一個積累經驗、循序漸進的過程,不能指望軟件測試人員在短時間內能將所有測試實現自動化。成功的自動化測試需要制定相應的自動化測試計劃,合理的自動化測試策略是自動化測試實施是否成功的第一步。只有充分考慮到自身實施自動化測試的風險、資源和目標后,才能制定出適合自己的自動化測試策略,并最終提高測試效率,降低測試成本。對每個有測試部門或從事測試業務的企業,都應該多借鑒國內外先進的測試經驗,參考業界流行的行業標準,找到適合自己團隊的測試方法和模式,創造更大的社會價值。

[1]Elfriede Dustin Jeff Rashka John Paul.于秀山,胡兢玉,譯.軟件自動化測試:引入、管理與實施[M].電子工業出版社.

[2]干曉鳴.軟件自動化測試的合理應用.計算機應用與軟件.

[3]軟件測試自動化技術.IBM Rational 技術白皮書.

[4]柳勝.軟件自動化測試框架設計與實踐[M].人民郵電出版社.

主站蜘蛛池模板: 亚洲国产AV无码综合原创| 国产免费一级精品视频 | 国产成人精品高清不卡在线| 露脸国产精品自产在线播| 天堂av高清一区二区三区| 国内精品九九久久久精品| 中国一级特黄视频| 丰满人妻久久中文字幕| 99视频在线观看免费| 日韩色图在线观看| 香蕉久久国产超碰青草| 永久免费av网站可以直接看的 | 欧美日韩第三页| 亚洲日韩在线满18点击进入| 久久综合色播五月男人的天堂| 亚洲色成人www在线观看| 一级黄色网站在线免费看| 国产香蕉在线视频| 婷婷六月综合| 欧美伦理一区| 久久精品娱乐亚洲领先| 亚洲熟女中文字幕男人总站| 国产午夜不卡| 欧美天天干| 99视频免费观看| 超碰免费91| 91视频日本| 中文成人在线视频| 亚洲欧美成人在线视频| 国产啪在线91| 久久无码免费束人妻| 亚洲最新在线| 夜色爽爽影院18禁妓女影院| 国产微拍一区| 日韩资源站| 欧类av怡春院| 久久人与动人物A级毛片| 狼友av永久网站免费观看| 四虎国产在线观看| 亚洲一区二区约美女探花| 一级毛片免费观看不卡视频| 日韩精品一区二区三区大桥未久 | 在线一级毛片| 无码内射在线| 国产精品手机在线播放| 国产精品久久久久鬼色| 国产精品亚洲一区二区在线观看| 国产精品视频第一专区| 精品视频一区在线观看| 免费观看国产小粉嫩喷水 | 精品福利视频导航| 国产精品亚洲专区一区| 欧美狠狠干| 69视频国产| 婷婷伊人五月| 日韩色图在线观看| 久久国产高清视频| 亚洲国产一成久久精品国产成人综合| 精品国产香蕉在线播出| 亚洲欧美另类专区| julia中文字幕久久亚洲| 国产精品手机视频一区二区| 亚洲a免费| aaa国产一级毛片| 91亚洲免费| 亚洲区欧美区| 怡红院美国分院一区二区| 午夜福利无码一区二区| 午夜毛片福利| 成年人视频一区二区| 久久婷婷六月| 日本不卡免费高清视频| 日韩在线观看网站| 亚洲熟女中文字幕男人总站| 国产日韩欧美在线视频免费观看| h视频在线观看网站| 中文字幕丝袜一区二区| 99国产精品免费观看视频| AⅤ色综合久久天堂AV色综合| 久久久精品无码一区二区三区| 亚洲无码高清一区二区| 国产微拍精品|