導航:首頁 > 手機軟體 > 軟體自動化測試的理解

軟體自動化測試的理解

發布時間:2022-04-27 03:04:54

1. 請簡單說明自動化測試和手工測試的區別自動化測試是否能替代手工測試

自動化測試不能代替手工測試,因為並不是所有的功能自動化測試都可以實現,它的效率也不高,而手工測試能通過人為的邏輯判斷效驗當前的步驟是否正確,同時用例的執行具有一定步驟跳躍性,能夠清楚知道邏輯,細致定位問題。

兩者的區別是:

1、測試效率不同

完成同等數目的測試,啟動自動化速度更快,手工測試則需要消費更多的時間。但是自動化測試的腳本開發比用例開發耗時長,包括編寫腳本、調試腳本、維護腳本,而手工測試雖然也要對測試用例進行撰寫、評審、修訂,由於用例編寫更多為自然語言,時間上會少。

2、資源利用率不同

自動化測試在設備、儀表資源能夠7*24小時利用,這點上手工測試沒有可比性。

3、執行可靠性不同

自動化測試中可靠的按腳本執行,後續定位、復現有明確的配置路徑可循,而手工測試往往會因為自己的判斷導致測試出錯,並且在測出來的問題上有一部分是不能復現的。但是自動化的穩定來源於其死板,而人的智慧體現在思維的跳躍,跳躍的思維也會導致後期不易定位。

4、覆蓋率不同

在同等時間內,啟動自動化測試能夠覆蓋更多的功能,而手工測試只能覆蓋小部分功能。但是自動化測試適合回歸測試,開發中的功能不劃算。對於開發中功能,需求或者實現的更改,都會導致自動化腳本的變更,開發中的功能更適合手工測試。

參考資料來源:網路-手工測試

參考資料來源:網路-自動化測試

2. 自動化測試的意義是什麼

自動化測試的意義是節省人力、時間或硬體資源,提高測試效率。

自動化測試是把以人為驅動的測試行為轉化為機器執行的一種過程。通常,在設計了測試用例並通過評審之後,由測試人員根據測試用例中描述的規程一步步執行測試,得到實際結果與期望結果的比較。

(2)軟體自動化測試的理解擴展閱讀:

自動化測試的工具:

1、QTP

全名HP QuickTest Professional software ,2012年12月6日發布11.5版本,並更名為Unified Functional Testing。是一種自動測試工具。使用QTP的目的是想用它來執行重復的手動測試,主要是用於回歸測試和測試同一軟體的新版本。

2、WinRunner

Mercury
Interactive公司的WinRunner是一種企業級的功能測試工具,用於檢測應用程序是否能夠達到預期的功能及正常運行。通過自動錄制、檢測和回放用戶的應用操作,WinRunner能夠有效地幫助測試人員對復雜的企業級應用的不同發布版進行測試

3、SilkTest

是業界領先的、用於對企業級應用進行功能測試的產品,可用於測試Web、Java或是傳統的C/S結構。SilkTest提供了許多功能,使用戶能夠高效率地進行軟體自動化測試。

參考資料來源:網路—自動化測試

3. 了解軟體測試么,什麼是軟體測試

軟體測試(英語:Software Testing),是描述一種用來促進鑒定軟體的正確性、完整性、安全性和質量的過程。軟體測試是一種實際輸出與預期輸出之間的審核或者比較過程。軟體測試的經典定義是:在規定的條件下對程序進行操作,以發現程序錯誤,衡量軟體質量,並對其是否能滿足設計要求進行評估的過程。

軟體測試主要學習功能測試、自動化測試、介面測試、性能測試,這些又是什麼呢?簡單來說就是:

1、功能測試:功能測試就是對產品的各功能進行驗證,根據功能測試用例,逐項測試,檢查產品是否達到用戶要求的功能

2、自動化測試:一般是指軟體測試的自動化,軟體測試就是在預設條件下運行系統或應用程序,評估運行結果,預先條件應包括正常條件和異常條件。

3、介面測試:介面測試主要用於檢測外部系統與系統之間以及內部各個子系統之間的交互點。

4、性能測試:性能測試是通過自動化的測試工具模擬多種正常、峰值以及異常負載條件來對系統的各項性能指標進行測試。

4. 什麼是自動化測試

自動化測試就是把以人為驅動的測試行為轉化為機器執行的一種過程。通常,在設計了測試用例並通過評審之後,由測試人員根據測試用例中描述的規程一步步執行測試,得到實際結果與期望結果的比較。在此過程中,為了節省人力、時間或硬體資源,提高測試效率,便引入了自動化測試的概念。
一般是指軟體的自動化測試~

5. 軟體自動化測試的概念

AutoRunner自動測試軟體和TestCenter測試管理軟體
上海澤眾軟體科技有限公司在8月12日(周日)下午一點半舉行軟體測試工具的免費培訓,歡迎廣大測試朋友報名參加。網路到「澤眾軟體」進入官網報名參加吧!

6. 什麼是軟體工程自動化測試

就是利用軟體工程的流程結合自動化測試工具來測試軟體的過程。

7. 軟體自動化測試,實用意義大嗎

自動化測試一般用在負載測試和壓力測試上,做性能測試的時候會用loadrunner。功能上的就是qtp啦,用腦子想想就能明白,自動化測試工具當然比手動測試的效率高。自動化測試必然是以後測試的發展方向!

8. 軟體自動化測試是幹嘛的

恩,現在很流行的,但是大部分都是跟風而已,工作中有迷茫是好事,說明你在思考,不妨就那麼放著,做好眼前的事,隨著工作的深入,會找到適合自己的結論。

首先,什麼適合做自動化測試

  1. 重復性高的測試用例,比如版本更新很快,基本功能驗證的用例,回歸測試等

  2. 人力不可達或者極其費力的,比如10000次注冊,點擊,等

自動化測試的方法論

1.測試自動化類似於軟體開發的過程

錄制/回放腳本的開發方式是不可能應付所有自動化測試的需求的,因此,需要測試人員掌握必要的開發知識和編碼知識。

2.測試自動化是一個長期的過程

首先,不能期望自動化測試在短期內找到很多Bug,自動化測試只有在長期的多次運行後磁能體現它的價值。其次,不要認為只要購買了工具,錄制一些腳本,然後就可以安枕無憂的看著自動化測試實現想要的效果,需要考慮自動化測試腳本維護成本,隨著被測試應用程序功能的增加和修改,測試腳本的維護工具量會急劇的增加。

3.確保測試自動化的資源,包括人員和技能

最好有專門的自動化測試工程師來保證測試自動化持續,順利的進行下去,自動化測試工程師需要對項目測試自動化負責,設計測試框架和腳本結構,解決各種測試腳本的開發問題,確保自動化測試得以計劃,設計和有序的開發,維護。

4.循序漸進的開展自動化測試

不要一開始就把自動化設想的很大,這往往是不可實現的,應該從小開始,先熟悉工具和自動化測試的基本技能,然後,整合資源開始實現一些基本的自動化測試用例,例如:冒煙測試類型的自動化測試腳本,先實現那些容易實現的,且相對穩定的功能模塊的自動化測試,然後再考慮逐步擴展和補充其他相對難實現,或者是比較不穩定的功能模塊。

5.確保測試過程的成熟度

如果軟體企業的測試過程和項目管理過程的能力成熟度比較低,則實現自動化測試的成功率也比較低,在開展自動化測試之前,先考察一下軟體企業各方面的管理能力,;例如:測試是否獨立進行?有無配置管理?進度控制能力如何?如果各方面的能力成熟度都比較差的話,則不要盲目的引入測試自動化。


自動化的目標:

自動化測試應該是這樣的:

自動化應該是一種Service(Automation As A Service),所有的測試人員和開發人員都應該可以自己很方便的去跑自動化

自動化測試的運行結果應該是可以自動分析的,佔用很少的時間

自動化測試的成功率應該是要很高的(比如95%以上)

自動化應該是寫一次,運行很多次

9. 1.什麼是自動化測試

自動化測試包含自動化和測試兩個概念:
自動化:由機器設備代替人工自動完成指定目標的過程
測試:校驗系統是否滿足規定的需求
自動化測試:讓程序(機器設備)代替人工自動完成系統校驗的過程。
如果想系統的學習自動化測試相關的技術,可以了解一下黑馬程序員的軟體測試課程,裡面講的非常詳細。或者論壇裡面有也相關基礎知識視頻

10. 什麼是自動化測試

一般是指軟體測試的自動化,軟體測試就是在預設條件下運行系統或應用程序,評估運行結果,預先條件應包括正常條件和異常條件。自動化測試是把以人為驅動的測試行為轉化為機器執行的一種過程。

基本信息

自動化測試是把以人為驅動的測試行為轉化為機器執行的一種過程。通常,在設計了測試用例並通過評審之後,由測試人員根據測試用例中描述的規程一步步執行測試,得到實際結果與期望結果的比較。在此過程中,為了節省人力、時間或硬體資源,提高測試效率,便引入了自動化測試的概念。

折疊編輯本段工具介紹

折疊QTP

全名HP QuickTest Professional software ,2012年12月6日發布11.5版本,並更名為Unified Functional Testing

QTP是quicktest Professional的簡稱,是一種自動測試工具。使用QTP的目的是想用它來執行重復的手動測試,主要是用於回歸測試和測試同一軟體的新版本。因此你在測試前要考慮好如何對應用程序進行測試,例如要測試那些功能、操作步驟、輸入數據和期望的輸出數據等

QuickTest針對的是GUI應用程序,包括傳統的Windows應用程序,以越來越流行的Web應用。它可以覆蓋絕大多數的軟體開發技術,簡單高效,並具備測試用例可重用的特點。其中包括:創建測試、插入檢查點、檢驗數據、增強測試、運行測試、分析結果和維護測試等方面。

折疊WinRunner

Mercury Interactive公司的WinRunner是一種企業級的功能測試工具,用於檢測應用程序是否能夠達到預期的功能及正常運行。通過自動錄制、檢測和回放用戶的應用操作,WinRunner能夠有效地幫助測試人員對復雜的企業級應用的不同發布版進行測試,提高測試人員的工作效率和質量,確保跨平台的、復雜的企業級應用無故障發布及長期穩定運行。

企業級應用可能包括Web應用系統,ERP系統,CRM系統等等。這些系統在發布之前,升級之後都要經過測試,確保所有功能都能正常運行,沒有任何錯誤。如何有效地測試不斷升級更新且不同環境的應用系統,是每個公司都會面臨的問題。

折疊RationalRobot

是業界最頂尖的功能測試工具,它甚至可以在測試人員學習高級腳本技術之前幫助其進行成功的測試。它集成在測試人員的桌面IBM Rational Test Manager上,在這里測試人員可以計劃、組織、執行、管理和報告所有測試活動,包括手動測試報告。這種測試和管理的雙重功能是自動化測試的理想開始。

折疊AdventNetQEngine

AdventNet QEngine是一個應用廣泛且獨立於平台的自動化軟體測試工具,可用於Web功能測試、web性能測試、Java應用功能測試、Java API測試、SOAP測試、回歸測試和Java應用性能測試。支持對於使用HTML、JSP、ASP、.NET、PHP、JavaScript/VBScript、XML、SOAP、WSDL、e-commerce、傳統客戶端/伺服器等開發的應用程序進行測試。此工具以Java開發,因此便於移植和提供多平台支持。

折疊SilkTest

是業界領先的、用於對企業級應用進行功能測試的產品,可用於測試Web、Java或是傳統的C/S結構。SilkTest提供了許多功能,使用戶能夠高效率地進行軟體自動化測試。這些功能包括:測試的計劃和管理;直接的資料庫訪問及校驗;靈活、強大的4Test腳本語言,內置的恢復系統(Recovery System);以及具有使用同一套腳本進行跨平台、跨瀏覽器和技術進行測試的能力。

折疊QARun

QARun的測試實現方式是通過滑鼠移動、鍵盤點擊操作被測應用,即而得到相應的測試腳本,對該腳本可以進行編輯和調試。在記錄的過程中可針對被測應用中所包含的功能點進行基線值的建立,換句話說就是在插入檢查點的同時建立期望值。在這里檢查點是目標系統的一個特殊方面在一特定點的期望狀態。通常,檢查點在QARun提示目標系統執行一系列事件之後被執行。檢查點用於確定實際結果與期望結果是否相同

折疊TestPartner

是一個自動化的功能測試工具,它專為測試基於微軟、Java和Web技術的復雜應用而設計。它使測試人員和開發人員都可以使用可視的腳本編制和自動向導來生成可重復的測試,用戶可以調用VBA的所有功能,並進行任何水平層次和細節的測試。TestPartner的腳本開發採用通用的、分層的方式來進行。沒有編程知識的測試人員也可以通過TestPartner的可視化導航器來快速創建測試並執行。通過可視的導航器錄制並回放測試,每一個測試都將被展示為樹狀結構,以清楚地顯現測試通過應用的路徑。

折疊Holodeck

-強大的故障植入軟體測試工具

Holodeck is an advanced fault-injection tool that gives you the power to attack an application while it monitors and logs everything your application does - every function call, registry entry, piece of data read or written.

折疊TelelogicTAU

TAU第二代包含三個最新的、最強大的技術用來加速大規模軟體開發和測試:統一建模語言(UML)及它的許多最新修訂版本中的特性,UML2.0;功能強大的測試語言TTCN-3和新的構造系統的方法:Model Driven Architecture(模型驅動構架)。這三個新的業界標准結合成TAU的已經過認可的軟體開發平台,形成了一個系統,一個一流的穩定可靠的工具解決方案。TAU第二代是系統與軟體開發解決方案的一個突破,它把業界從使用了太長時間的手工、易出錯、以代碼為中心的方法中釋放出來,自然而然地邁向下一步,一個更加可視化、自動化及可靠的開發方法。Telelogic TAU/Tester是基於通用測試語言TTCN-3,用於自動化的系統和集成測試的強大工具。TAU/Tester以現代化的開發工具為基礎,提供高層測試功能,支持整個測試生命周期,加速自動化測試。TAU/Tester可使用戶特別關注於測試的開發,因為TTCN-3語言是獨立於開發語言或測試設備的,且是抽象和可移植的。

折疊AutoRunner

AutoRunner是黑盒測試工具,可以用來完成功能測試、回歸測試,可以提高測試效率,降低測試人工成本。

產品可以對以下類型對象進行GUI功能性測試:

1 Windows類型對象,一般為用C++/Delphi/VB/VFP/PB/.NetForm等技術開發的桌面程序。

2 IE網頁對象,一般性的網站,比如大的門戶類網站。

3 Java對象,一般為用AWT/Swing/SWT等技術開發的桌面程序。

4 Flex對象,網頁的內容是用Flex開發的。

5 Silverlight對象,網頁的內容是用Silverlight開發的。

6 WPF對象,一般為用WPF技術開發的桌面程序。

7 QT對象,一般為用QT技術開發的桌面程序。

折疊PhoenixFramework

Phoenix Framework是一款基於 Selenium,Webdriver,autoIt研發的一款集資源管理和測試於一體的Web自動化測試工具。最新版本是1.1.8,該工具支持無腳本執行模式,無人值守執行模式,自由定製模式。不僅執行模式可以定製,功能模塊也支持定製。使用該工具的界面創建用例,組裝腳本,啟動執行。使用該工具其他開放的介面,可手動創建腳本,組裝並執行。它支持兩種部署模式,第一種是Server-Client方式,Server與Client均為EXE程序,通信協議是Socket;另一種是WEB版部署,方便與現有系統集成,支持Linux,將Server與Client放到Tomcat或Weblogic伺服器下部署,通信協議為Http,通過WEB頁面控制並監控Client端的執行。

折疊編輯本段前提條件

實施自動化測試之前需要對軟體開發過程進行分析,以觀察其是否適合使用自動化測試。通常需要同時滿足以下條件:

1) 需求變動不頻繁

測試腳本的穩定性決定了自動化測試的維護成本。如果軟體需求變動過於頻繁,測試人員需要根據變動的需求來更新測試用例以及相關的測試腳本,而腳本的維護本身就是一個代碼開發的過程,需要修改、調試,必要的時候還要修改自動化測試的框架,如果所花費的成本不低於利用其節省的測試成本,那麼自動化測試便是失敗的。

項目中的某些模塊相對穩定,而某些模塊需求變動性很大。我們便可對相對穩定的模塊進行自動化測試,而變動較大的仍是用手工測試。

2) 項目周期足夠長

自動化測試需求的確定、自動化測試框架的設計、測試腳本的編寫與調試均需要相當長的時間來完成,這樣的過程本身就是一個測試軟體的開發過程,需要較長的時間來完成。如果項目的周期比較短,沒有足夠的時間去支持這樣一個過程,那麼自動化測試便成為笑談。

3) 自動化測試腳本可重復使用

如果費盡心思開發了一套近乎完美的自動化測試腳本,但是腳本的重復使用率很低,致使其間所耗費的成本大於所創造的經濟價值,自動化測試便成為了測試人員的練手之作,而並非是真正可產生效益的測試手段了。

另外,在手工測試無法完成,需要投入大量時間與人力時也需要考慮引入自動化測試。比如性能測試、配置測試、大數據量輸入測試等。

折疊編輯本段適用場合

通常適合於軟體測試自動化的場合:

(1)回歸測試,重復單一的數據錄入或是擊鍵等測試操作造成了不必要的時間浪費和人力浪費;

(2)此外測試人員對程序的理解和對設計文檔的驗證通常也要藉助於測試自動化工具;

(3)採用自動化測試工具有利於測試報告文檔的生成和版本的連貫性;

(4)自動化工具能夠確定測試用例的覆蓋路徑,確定測試用例集對程序邏輯流程和控制流程的覆蓋。

隨著測試流程的不斷規范以及軟體測試技術的進一步細化,軟體測試自動化已經日益成為一支不可忽視的力量。能否藉助於這支外在力量以及如何藉助於這支力量來規范企業測試流程、提高特定測試活動的效率,正是本期所要討論的話題。

軟體測試自動化的研究領域主要集中在軟體測試流程的自動化管理以及動態測試的自動化(如單元測試、功能測試以及性能方面)。在這兩個領域,與手工測試相比,測試自動化的優勢是明顯的。首先自動化測試可以提高測試效率,使測試人員更加專注於新的測試模塊的建立和開發,從而提高測試覆蓋率;其次,自動化測試更便於測試資產的數字化管理,使得測試資產在整個測試生命周期內可以得到復用,這個特點在功能測試和回歸測試中尤其具有意義;此外,測試流程自動化管理可以使機構的測試活動開展更加過程化,這很符合CMMI過程改進的思想。根據OppenheimerFunds的調查,在2001年前後的3年中,全球范圍內由於採用了測試自動化手段所實現的投資回報率高達1500%。

折疊編輯本段選型原則

然而存在優勢是否就一定意味著選擇自動化測試方案都能為企業帶來效益回報呢?也不盡然,任何一種產品化的測試自動化工具,都可能存在與某具體項目不甚貼切的地方。再加上,在企業內部通常存在許多不同種類的應用平台,應用開發技術也不盡相同,甚至在一個應用中可能就跨越了多種平台;或同一應用的不同版本之間存在技術差異。所以選擇軟體測試自動化方案必須深刻理解這一選擇可能帶來的變動、來自諸多方面的風險和成本開銷。

以下筆者給出企業用戶進行軟體測試自動化方案選型的參考性原則,這些原則是從筆者實際工作中凝練而成的,它包括以下六個方面的建議:

●選擇盡可能少的自動化產品覆蓋盡可能多的平台,以降低產品投資和團隊的學習成本;

●測試流程管理自動化通常應該優先考慮,以滿足為企業測試團隊提供流程管理支持的需求;

●在投資有限的情況下,性能測試自動化產品將優先於功能測試自動化被考慮;

●在考慮產品性價比的同時,應充分關注產品的支持服務和售後服務的完善性;

●盡量選擇趨於主流的產品,以便通過行業間交流甚至網路等方式獲得更為廣泛的經驗和支持;

●應對測試自動化方案的可擴展性提出要求,以滿足企業不斷發展的技術和業務需求。

折疊編輯本段過程

自動化測試與軟體開發過程從本質上來講是一樣的,無非是利用自動化測試工具(相當於軟體開發工具),經過對測試需求的分析(軟體過程中的需求分析),設計出自動化測試用例(軟體過程中的需求規格),從而搭建自動化測試的框架(軟體過程中的概要設計),設計與編寫自動化腳本(詳細設計與編碼),測試腳本的正確性,從而完成該套測試腳本(即主要功能為測試的應用軟體)。

1) 自動化測試需求分析。

當測試項目滿足了自動化的前提條件,並確定在該項目中需要使用自動化測試時,我們便開始進行自動化測試需求分析。此過程需要確定自動化測試的范圍以及相應的測試用例、測試數據,並形成詳細的文檔,以便於自動化測試框架的建立。

2)自動化測試框架的搭建。

所謂自動化測試框架便是像軟體架構一般,定義了在使用該套腳本時需要調用哪些文件、結構,調用的過程,以及文件結構如何劃分。

而根據自動化測試用例,我們很容易能夠定位出自動化測試框架的典型要素:

a. 公用的對象。

不同的測試用例會有一些相同的對象被重復使用,比如窗口、按鈕、頁面等。這些公用的對象可被抽取出來,在編寫腳本時隨時調用。當這些對象的屬性因為需求的變更而改變時,只需要修改該對象屬性即可,而無需修改所有相關的測試腳本。

b. 公用的環境。

各測試用例也會用到相同的測試環境,將該測試環境獨立封裝,在各個測試用例中靈活調用,也能增強腳本的可維護性。

c. 公用的方法。

當測試工具沒有需要的方法時,而該方法又會被經常使用,我們便需要自己編寫該方法,以方便腳本的調用。

d. 測試數據。

也許一個測試用例需要執行很多個測試數據,我們便可將測試數據放在一個獨立的文件中,由測試腳本執行到該用例時讀取數據文件,從而達到數據覆蓋的目的。

在該框架中需要將這些典型要素考慮進去,在測試用例中抽取出公用的元素放入已定義的文件,設定好調用的過程。

折疊編輯本段腳本編寫

該編寫過程便是具體的測試用例的腳本轉化。初學的自動化測試人員均會使用錄制腳本到修改腳本的過程。但專業化的建議是以錄制為參考,以編寫腳本為主要行為,以避免錄制腳本帶來的冗餘、公用元素的不可調用、腳本的調試復雜等問題。

折疊編輯本段測試運行

事實上,當每一個測試用例所形成的腳本通過測試後,並不意味著執行多個甚至所有的測試用例就不會出錯。輸入數據以及測試環境的改變,都會導致測試結果受到影響甚至失敗。而如果只是一個個執行測試用例,也僅能被稱作是半自動化測試,這會極大的影響自動化測試的效率,甚至不能滿足夜間自動執行的特殊要求。

因此,腳本的測試與試運行極為重要,它需要詳查多個腳本不能依計劃執行的原因,並保證其得到修復。同時他也需要經過多輪的腳本試運行,以保證測試結果得一致性與精確性。

自動化測試引入的原因是就把軟體測試人員從枯燥乏味的機械性手工測試勞動中解放出來,以自動化測試工具取而代之,使測試人員的精力真正花在提高軟體產品質量本身。

折疊編輯本段注意事項

首先,一個企業實施測試自動化,絕對不是拍腦袋說干就能幹好的,它不僅涉及測試工作本身流程上、組織結構上的調整與改進,甚至也包括需求、設計、開發、維護及配置管理等其他方面的配合。如果對這些必要的因素沒有考慮周全的話,必然在實施過程中處處碰壁,既定的實施方案也無法開展。其次,盡管自動化測試可以降低人工測試的工作量,但並不能完全取代手工測試。100%的自動化測試只是一個理想目標,根據筆者的經驗,即便一些如SAP、OracleERP等測試庫規劃十分完善的套件,其測試自動化率也不會超過70%。所以一味追求測試自動化只會給企業帶來運作成本的急劇上升。再次,實施測試自動化需要企業有相對規模的投入,對企業運作來說,投入回報率將是決定是否實施軟體測試自動化的最終指揮棒,筆者建議企業在決定實施軟體測試自動化之前,必須要做量化的投資回報分析。此外,實施軟體測試自動化並不意味著必須采購強大的自動化軟體測試工具或自動化管理平台,畢竟軟體質量的保證不是依靠產品或技術,更多的因素在於高素質的人員和合理有效的流程。

折疊編輯本段實戰模擬

折疊背景介紹

A公司是一家大型保險公司,擁有近20個城市的分公司,並在其中5個城市建立了IT支持中心。平均每年的上線應用數量在20個左右(新業務系統和原有業務系統的主要版本發布)。A公司的專職測試團隊人數不足30人而且測試團隊的測試人員技能參差不齊測試只是作為項目上線前的一道工序而已。在測試團隊內部也幾乎沒有自動化的手段,主要依靠手工測試。由於已上線應用系統的問題,開發團隊必須分出一部分資源去維護和修復上線應用,而同時測試團隊的測試成果和效率卻無法和這些應用質量掛鉤,也更無從談起對軟體質量的控制。所以,A公司決定在軟體質量和測試方面進行投入,他們考慮以下幾方面:

●引進軟體測試流程管理的自動化,提高軟體測試過程的管理水平,使軟體測試和軟體開發一樣可被評估、被衡量。

●實現性能測試自動化,所有應用上線之前必須有應用性能風險評估報告和相關部門的確認

●逐步實現功能測試的自動化,在目前人員配置的情況下,把部分手工測試變成自動化測試,提高測試可信度,降低人為錯誤。

●通過軟體測試自動化,管理軟體測試中的案例、缺陷、報告等資產,進一步提升軟體測試的效率並建立測試基礎庫。

●在規劃中,將來的2~3年內使所有的應用系統上線都必須有數字化的測試數據作為依據。

折疊系統的情況

由於保險公司的業務種類繁多,同時在經過了幾十年的經營後,公司內的應用系統從早期的終端方式到現代的J2EE和.NET等應有盡有,魚龍混雜。IT部門已經建立的3年規劃,即在未來的3年時間內將所有終端和C/S方式的應用轉換成B/S架構,但當前仍然需要對這些舊應用系統進行維護,以保證業務的順利進行。對於開發部門來說,新應用開發基本上已經以B/S架構為主,主要是基於J2EE架構的WebHTTP應用和部分Window.NETForm的應用。

折疊公司現狀

企業機構在做測試自動化選型時一定要考慮清楚企業內部哪些部分可以實施自動化、哪些部分暫不實施自動化、哪些部分僅在某幾個項目做自動化試點。切忌匆忙上馬或盲目否定,缺乏實事求是的理性思考。

測試部門僅負責系統測試和對用戶驗證測試進行管理,對於之前的單元測試和集成測試主要由開發團隊中劃分出的一部分臨時測試人員完成。由於缺乏監測手段,測試部門也無法收集和確定集成測試和單元測試的完成情況,在整個軟體測試過程中,業務需求是由開發部門通過RationalRequisitePro進行管理,但測試需求尚沒有提出要求,測試案例主要通過在公司公用的文件伺服器中的目錄管理方式管理,對測試中缺陷流程等管理主要依靠郵件的流轉進行處理90%以上的測試是通過Excel和Word等測試案例文檔來完成,測試人員對軟體測試自動化的認識僅停留在"記錄+回放"的認識上。

折疊方案

方案A:A公司可以採用美科利(Mercury)公司產品為主的軟體測試自動化方案。

●依照原先的郵件流轉過程配置TestDirector缺陷管理流程,為每個保險業務的開發小組和測試團隊分配相應的用戶許可證,取消原有郵件方式。

●部署MercuryQuickTestProfessional,以便完成應用程序相關功能測試。

●部署MercuryLoad-Runner。從測試團隊中分化出專職的性能測試自動化工程師和小組,和業務部門協調,建立A公司應用系統上線性能指標,通過LoadRunner給出測試指標。

●建議A公司成立專門的質量控制部門,對TestDirector中的數據定期進行分析,建立相關質量模型,以便於企業量化管理和過程改進。

方案B:A公司也可以採用IBMRational產品為主的軟體測試自動化方案。

●採用RationalTestmanager來進行整個測試流程的管理,為相關開發和測試小組成員分配相應許可權,改變以前通過郵件以及Word、Excel文檔管理測試的工作方式。

●部署RationalRobot,用它來完成功能相關的測試工作以及新版本發布時的冒煙測試。此外,RationalRobot也能較好地完成性能相關測試。統一的操作方式降低了工具的學習周期和培訓帶來的大筆開銷。

●部署RationalPurifyplus,使測試工作前移到開發階段。由於Purifyplus能較好地支持白盒測試,編程人員在編碼階段引入的錯誤能盡早被檢測到,這大幅降低了後期測試的開銷。

●建議A公司成立專門的質量控制部門,對Testmanager中的數據定期進行分析,建立相關質量模型,以便於企業量化管理和過程改進。

方案C:A公司也可以採用開源軟體為主的軟體測試自動化方案。

●採用Bugzilla來進行Bug跟蹤管理,採用BugzillaTestRunner進行測試用例管理,採用CVS進行測試資源的配置管理。

●採用MaxQ和WebInject對B/S結構的應用系統進行功能測試。

●採用DBMonster、Open-STA、LoadSim進行性能相關測試。

●可採用Xunit架構的開源工具對不同語言的程序單元進行單元測試。

●建議A公司成立專門的開源軟體維護小組,以解決可能會碰到的工具維護工作。

●建議A公司成立專門的質量控制部門,對Bugzilla、TestRunner、CVS中的數據定期進行分析,建立相關質量模型,以便於企業量化管理和過程改進。

折疊方案評價

由於不同客戶在組織架構、員工素質以及流程管理水平等方面的不同,我們很難用一個實例、一兩句話來說明不同解決方案的適用性。在上面的例子中,筆者給出了3種可行的方案,具體選擇哪一個,需要仔細權衡。這里筆者給出一般性的意見,對於不想受制於某個測試自動化廠家的企業,開源絕對是一個理想的選擇。此外,它不需要支付成本,工具的源代碼可以隨意修改,因而具有較好的靈活性。但開源工具的弊端也是明顯的:缺乏使用培訓和技術支持,工具的用戶界面一般也較為粗糙。而對於那些比較看重培訓和售後支持的企業,筆者建議選擇IBMRational或Mercury或其他廠家的產品。這樣雖然需要支付一部分費用,但省去了工具維護所需要的大量工作。至於具體選擇哪個廠家的產品為好,筆者尚無結論性意見。相信讀者朋友都有一些見仁見智的看法,不妨來信交流。

閱讀全文

與軟體自動化測試的理解相關的資料

熱點內容
電腦上怎麼下載班智達的軟體 瀏覽:915
無痕跡消除圖片軟體 瀏覽:506
免費小票軟體 瀏覽:724
華為在哪裡設置軟體停止運行 瀏覽:704
用電腦鍵盤調節聲音大小 瀏覽:1054
自動刷軟體賺錢 瀏覽:1050
古裝連續劇免費版 瀏覽:1213
工免費漫畫 瀏覽:801
手機軟體專門儲存文件 瀏覽:1302
uos如何用命令安裝軟體 瀏覽:1081
有線耳機插電腦麥克風 瀏覽:453
侏羅紀世界3在線觀看完整免費 瀏覽:792
單個軟體怎麼設置名稱 瀏覽:523
鳳凰網電腦版下載視頻怎麼下載視頻怎麼下載 瀏覽:1176
明白之後如何免費獲得無人機 瀏覽:616
如何解禁軟體菜單 瀏覽:614
副路由器連接電腦視頻 瀏覽:1144
內置wifi電視如何裝軟體 瀏覽:855
手機換零免費雪碧 瀏覽:1353
國行蘋果如何下載美版軟體 瀏覽:983