什么是自動化測試 自動化測試 自動化測試指軟件測試的自動化,在預設狀態(tài)下運行應用程序或者系統(tǒng),預設條件包括正常和異常,最后評估運行結果。將人為驅動的測試行為轉化為機器執(zhí)行的過程。 常用的...
什么是自動化測試
自動化測試 自動化測試指軟件測試的自動化,在預設狀態(tài)下運行應用程序或者系統(tǒng),預設條件包括正常和異常,最后評估運行結果。將人為驅動的測試行為轉化為機器執(zhí)行的過程。
常用的自動化測試工具 QTP、selenium、Rational Robot 、jmeter、appium、soapui等
QTP:功能測試jmeter:既能做功能測試,也可以做接口測試。soapui:做接口測試selenium:ThroughtWorks的一款開源工具。是一個web的自動化測試工具。selenium相比于QTP的優(yōu)點: – 免費。 – 小巧,對于不同的語言它只是一個包而已,而QTP 需要下載安裝1個多G 的程序。 – 不管是C、java、ruby、python或是C#,都可以通過selenium完成自動化測試,而QTP只支持VBS。 – 支持多平臺:Windows、linux、MAC,支持多瀏覽器:ie、ff、safari、opera、chrome – 支持分布式測試用例的執(zhí)行,可以把測試用例分布到不同的測試機器的執(zhí)行,相當于分發(fā)機的功能。
自動化工具和自動化框架的區(qū)別: 自動化框架包括自動化工具。自動化框架可以管理整個自動化測試,工具僅僅是一種測試工具。
自動化測試的演變:測試工具—-數(shù)據(jù)驅動—-關鍵字驅動—-測試框架—-測試平臺
自動化測試方法: 測試對象:UI、接口、代碼 測試過程:系統(tǒng)測試、集成測試、單元測試 執(zhí)行人員:測試人員、開發(fā)人員
對應關系: UI:系統(tǒng)測試—–測試人員 接口:集成測試—–開發(fā)人員或白盒測試工程師 代碼:單元測試—–開發(fā)人員
自動化測試可以在整個測試過程中任何一個階段實施測試人員一般在系統(tǒng)測試時進行自動化測試集成測試階段多進行自動構建、部署、以及冒煙測試的自動化單元測試針對代碼級別進行測試,可以進行靜態(tài)代碼檢查,或者執(zhí)行單元測試用例。測試的一般步驟是:冒煙測試(在系統(tǒng)測試之前,是判斷是否接收測試的憑據(jù))、系統(tǒng)測試、回歸測試UI自動化
用例維護量大頁面相關性強,必須后期介入UI測試適合與界面變動較小的項目接口自動化
可在產(chǎn)品前期介入用例維護量小頁面相關性小適合接口變動較小,界面變動頻繁的項目代碼自動化
需求不要頻繁變更頁面相關性小自動化測試的優(yōu)勢 主要任務:降低大型系統(tǒng)的由于變更或者多期開發(fā)引起的大量的回歸測試的人力投入。
減少人力,提高效率減少重復測試的時間,實現(xiàn)快速回歸測試創(chuàng)建優(yōu)良可靠的測試過程,減少人為錯誤可以運行更多更繁瑣的測試可執(zhí)行一些手工測試困難或不可能進行的測試更好的利用資源測試具有一致性和重復性測試腳本的重用性如何實施自動化測試
自動化測試的適用對象 前提條件:需求變動不頻繁、項目周期足夠長、自動化測試腳本可重復使用。
不適合做自動化測試的項目: 1. 需求變動頻繁的項目,自動化腳本不能重復使用,維護成本太大,性價比低。 2. 項目周期短,自動化腳本編制完成后使用次數(shù)不多,性價比低。 3. 交互性較強的項目,需要人工干預的項目,自動化無法實施。
適合做自動化的項目: 1. 產(chǎn)品型項目。產(chǎn)品型項目,新版本在舊版本上的基礎上進行改進,功能變動不大的項目,但項目的新老功能都必須重復的進行回歸測試?;貧w測試是自動化測試的強項,它能夠很好的驗證你是否引入了新的缺陷,老的缺陷是否修改過來了。所以在某種程度上可以把自動化測試工具叫作回歸測試工具。 2. 機械并頻繁的測試。每次需要輸入相同、大量的一些數(shù)據(jù),并且在一個項目中運行的周期比較長。
什么時候實施 自動化冒煙測試:偏重于業(yè)務流程 自動化回歸測試:偏重于功能模塊
如何實施自動化測試 分為以下7個過程: 1. 分析:總體把握系統(tǒng)邏輯,分析出系統(tǒng)的核心體系架構。 2. 設計:設計測試用例,測試用例要足夠明確和清晰,覆蓋面廣而精。 3. 實現(xiàn):實現(xiàn)腳本,有兩個要求:一是斷言(斷言:判斷用例的預期結果和實際結果是否一樣。);二是合理的運用參數(shù)化。 4. 執(zhí)行:腳本執(zhí)行過程中的異常需要仔細去分析。 5. 總結:測試結果的分析,和測試過程的總結是自動化測試的關鍵。 6. 維護:自動化測試腳本的維護是一個難以解決但又必須要解決的問題。 7. 分析:在自動化測試過程中深刻的分析自動化用例的覆蓋風險和腳本維護的成本。
注:
腳本設計:指框架的設計業(yè)務測試人員的:驗證需求以及幫開發(fā)人員準備一些數(shù)據(jù)。自動化測試實施失敗的因素 1. 期望值過高。 2. 對收益和成本的認識不清。自動化測試的收益是由測試腳本的重復運行次數(shù),或自動化測試腳本的利用率決定的。