當前位置:學問君>學習教育>畢業論文>

論述軟件工程中的自動化測試技術

學問君 人氣:7.31K

摘要:隨着軟件規模不斷擴大,軟件的複雜度不斷加大,採用手工測試軟件已經不能適應要求。採用電子自動化測試技術對於人工而言,能更好地保證測試的準確度,而且大大提高了測試的效率,加快軟件的開發速度。本文主要從自動化測試技術在軟件工程中的應用着手,對自動化技術的選擇和工作過程作簡要介紹。

論述軟件工程中的自動化測試技術

關鍵詞:軟件測試手工 自動化

1 引言

軟件作爲硬件系統的靈魂,在資訊技術發展的今天,重要性日益凸顯,軟件開發行業目前已成爲經濟發展的支柱之一,在軟件開發中,軟件測試是非常重要的一環,往往影響整個軟件開發的速度,因爲軟件的測試需要佔用大量的工作時間,對準確率可靠度高的軟件來說,軟件的測試尤爲重要。

軟件測試技術的發歷史展與軟件業的發展密切相關:在20世紀50至60年代,開發的軟件產品往往是由程序員自己使用,在這種情況下,軟件測試當然也是程序員的個人行爲;在60至70年代,屬於程序系統階段,有小的“軟件作坊”開發軟件供用戶使用,此時的軟件測試具有了一定的測試標準和要求,可能會具體指定開發小組的成員進行測試;80年代末至90年代中期,測試工具的質量和數量不斷增長,測試與SQA分離,注重於工具對測試效率的影響。

90年後期至今,關注有效的過程管理對於軟件測試的重要性,形成各種測試模型、測試能力成熟度模型。

由於軟件系統規模日益擴大化和複雜化,手工測試已經不能滿足其發展要求,引人自動化測試可爲軟件開發帶來許多好處:1)可以提高測試效率,縮短測試時間,直接帶來生產率的提高;2)將測試人員從手工測試中解放出來。使測試人員專注於新的測試模組的建立和開發,從而提高測試覆蓋率;3)可以完成一些手工測試不能或難以完成的測試;4)減少人爲因素的影響,使得測試結果更加可靠。

2 測試工具的選擇

在自動化測試中,首先要根據要求合理選擇測試工具,測試工具的價格在開發資金中佔有較高的比例,從成本角度必須考慮,而且它參加了測試的大部分活動,影響測試的準確性和效率。根據測試方法不同,測試工具有黑盒和白盒兩種;而從測試目的和對象的角度區分'亦可分爲:單元測試、性能測試、功能測試、負載測試等。

對於工具的選擇,並非測試功能越強大越好,前提是適用,而且必須滿足相容性,能夠支援不同的執行平臺,能對不同的腳本進行測試,同時對待測試的腳本具有追蹤報道、錯誤定位的功能;再次,擁有測試結果總結功能,能夠將測試結果以圖表的形式展示出來,相對於一般的結果表述形式,圖標表示更直觀。更容易讓人理解、信服,可以及時xen~J試結果進行分析。一般還要從功能、價格、測試工具的集成能力、測試工具的易用性、側重點、技術支援等多方面考慮。以下一些代表性的測試工具:

1)適合進行功能測試、驗收測試的軟件工具有ThoutgIlt works公司專門爲WEB應用而開發的自動化測試工具,其最大的優勢是:可直接在瀏覽器上執行、支援多操作系統,可以發現瀏覽器的不相容性、支援兩種開發腳本的模式。

2)美國Rational公司的著名套裝軟件Rational VisuM Test,它的一個重要特點是可以自動驅動被測程序的執行,並且可以自動記錄和重放程序執行過程,從而實現了對測試“複查”的`自動化。

除了以上這些,還有IBM公司的Robot,Mercury Interactive公司的win rllnllet和Com—upward公司的0A Center等,都是比較知名的自動化測試工具,可以根據測試的需要和成本等綜合因素進行考慮。

3 自動化測試方案的制定

方案的制定中,對測試內容進行分類是第一步,有些測試內容可以利用自動化進行測試,但另一些測試用例可能不能被自動化,還有一些可以簡單依靠手工即可測試的,就沒有必要進行自動化測試。然後制定當前最適合自動化的測試方案,分步驟完成,儘量不要一次性對太多的內容全部自動化測試。一般來講,較容易被自動化測試的有以下一些模組:1)對主要功能的測試用例。2)很快有回報的用例。3)執行最頻繁的測試用例。

 4 自動化測試工作過程

軟件自動化測試一般分以下幾個步驟進行:1)測試方法與過程的設計,這些在前面已經交代過,包括測試工具的選擇,組要依據測試目的和成本的角度考慮;還有測試方案的制定,區分待測試餓內容,並對其分類;2)腳本的形成與執行,依據測試案例設計的要求,形成合適的腳本,亦可利用自動化程度較高的軟件測試工具自動形成需要的腳本,再對形成的腳本進行執行,分析待測軟件;3)測試結果對比,分析腳本回放執行的結果是否符合要求,從而判斷測試是否透過;4)形成測試報告,這是測試的最後一步,主要是對測試結果進行分析,並形成相關的統計圖標。

 5 展望與總結

在大規模軟件製作中,手工測試往往影響軟件的開發速度,並降低了可靠性,採用自動化軟件測試,一方面可以提高效率,提高可靠性,另一方面可以更全面地實行軟件測試,可以更好地適應複雜度越來越高,規模越來越大的軟件系統。因此在開發軟件是要合理,選擇測試工具,制定測試方案,保證軟件的開發速度,提高質量。

參考文獻

[1]陸璐,王柏勇.軟件自動化測試技術【M】.北京清華大學}H版社.2006.

[2]朱國慶,等.軟件測試自動化實踐【J】.裝甲兵工程學院學報,2004.6(2):16.

[3]李永忠.軟件測試中有效利用自動化測試方法的研究田.2006,6(2):22.

[4]朱芳,李曦.一種多平臺自動化測試工具的設計和實現【J】.計算機工程,2004(30):24.