自動化測試經驗

2021-03-03 22:31:24 字數 2082 閱讀 4673

總結來看,我個人覺得擁有這樣的測試理念可以解開我們的疑惑,帶領我們走出目前的困境。

二、自動化測試迷失

隨著工作、發展、提高等等多方面的需要,我接到了開展自動化測試的研究工作。概念上來說自動化測試是一種測試度量體系。現實點來說,自動化測試可以為我們自動、無誤的運作完成大量且需要重複執行的測試用例。

這是多麼讓人振奮的概念。甚至可以解開我上文所提到的有關測試工作的困惑。我很興奮的去展開研究目前最流行的自動化測試工具之一qtp。

甚至設計出了管理中心的三個重要功能的自動化測試指令碼,並且執行無誤在自動化測試討論會上興奮的向大家演示。之後還用工具按鍵精靈設計出了前端的a類測試用於實際的測試。但很讓人沮喪的是最終這些指令碼全被遺棄在電腦硬碟的角落,再也沒派上用場。

為什麼?因為他們維護起來很困難,因為他們編寫它們的時間與實現的價值並沒有超過手工測試。這就是自動化測試嗎?

怎麼不可行啊,我有點不太相信這種結局,所以我再一次困惑了。

外部培訓的老師這樣告訴我們:「我們並沒有理性的看待自動化測試,自動化測試並不是我們看上去的那樣美。首先自動化測試能直接的節約成本、讓測試人員變輕鬆的想法是乙個誤區。

因為原本用於手工測試的時間用來編寫及維護測試指令碼了,而完善的自動化測試指令碼編寫或維護的時間很可能會超過手工測試的時間。再者自動化測試指令碼用例是測試人員所編寫,自動化測試只能是沿著該測試人員的「足跡」前進。所以用自動代測試來發現更多軟體產品問題的想法也是乙個誤區。

其次並不是所有的測試都能自動化,測試的自動化也不一定是解決問題的最佳手段。」

聽完這些,原本困惑的我又多了份驚訝,一方面驚嘆產述的這些狀況與我之前的自動化測試的試行失敗是相近的。另一方面又猜疑這自動化測試該不會像共產主義社會那般吧!隨著培訓內容的展開,我終於解開了困惑,何為理性的看待自動化測試。

「如同不能指望原始社會擁有了汽車就能進入現代社會一樣,自動化測試工具永遠都不能主導測試實現自動化」(出自國信培訓文件)。我們錯誤的把自動化測試看成了一種測試工具或測試手段。自動化測試是一種理念,它要發揮它真正的作用就需要這種理念轉變為一種體系——自動化測試體系。

「引入自動化測試的前提是已經建立了合適的自動化測試體系,如果沒有這些,而片面的追求自動化,無異於緣木求魚。自動化測試體系是指能夠適用某種環境的測試工具、過程、人員結構、方法的綜合,運用於整個專案團隊」 。回到我之前的對qtp研究失敗的原因,首先我開始就覺得因為研發的設計、編碼實現並沒有考慮到自動化,而導致自動化指令碼的編寫非常吃力。

比如產品頁面專案的命名不規範,導致自動化測試工具很難捕捉這些頁面對像。其次就是測試指令碼的方向迷失,我在研究qtp的時候就發現了這個問題。隨著我一點點的在編寫著指令碼,我不斷的發現自己在的測試指令碼的編寫方向上出現了迷失。

這段指令碼我編寫的目標本來是功能測試,但隨著我的補充卻接近於開發級的單元測試。而另一段本屬於功能性測試的指令碼,因為功能的重點需要,我又補充了部分指令碼導致整個測試指令碼測試目標變成了完整關聯性測試。而做為單元測試的指令碼卻並沒有在開發的角度上來設計,根本做不到函式、類等**級的測試,根本不能達到要求。

做為完整性測試的指令碼也無法模擬介面功能中幾何倍數級的各種條件輸入對應的輸出測試。而功能測試指令碼算是碩果僅存,但隨著開發對產品的**大規模調整(這些調整當然不會考慮對已經實現的指令碼的影響)而直接「報廢」。如果需要指令碼繼續工作,那麼就要花時間來修改調整它。

這些指令碼的結局又再一次可想而知了。

所以首先我們要理性的看待自動化測試,不要片面的去追求它。對不同的專案要開展不同自動化策略。參考如下

(1) 評審專案中特定的部分作為應用自動化的候選對像。

(2) 從專案中高度冗餘的任務或場景重點考慮自動化。

(3) 將乏味且人工容易出錯的工作重點考慮自動化。

(4) 將回歸測試經常需要「照顧」到的部分重點考慮自動化。

(5) 自動化開始時要首先關注開發成熟、理解透徹、相對穩定的且不易變的部分優先考慮自動化

其次,自動化所實現的最大價值目標是可不間斷的、可重複的自動執行對需求、設計、**全面覆蓋的大量測試用例從而預防bug的產生的一套質量保障機制。所以自動化測試的重點在於測試自動化作為乙個體系,要運用於整個專案團隊。專案組要討論它(策略、時間、成本等)、研發需要參與它(編碼方向、自動化支撐、以及**單元測試自動化的計畫和執行等)、測試要引導及推進它(策略、方法、執行、跟進、維護等),各團隊共同形成體系,才能讓自動化測試工具真正的成為一種質量保證的有力**。

自動化測試計畫

修訂記錄 1 目標 6 2 概述 6 2.1 專案背景 6 2.2 範圍 6 3 組織形式 6 4 測試物件 7 5 需求跟蹤 8 6 測試通過 失敗標準 9 7 測試掛起標準及恢復條件 9 8 測試任務安排 9 8.1 任務1 對功能性的測試 9 8.1.1 方法和標準 9 8.1.2 輸入 輸出...

軟體自動化測試介紹

綜上所述,可以歸結自動化完成不了的,手工測試都能彌補,兩者有效的結合是測試質量保證的關鍵。三 常用的自動化測試軟體介紹 1 qtp測試工具 提到自動化測試,qtp是不得不提的,qtp全名為hp quicktest professional software,是hp公司旗下的一款產品,長期以來被稱為測...

iPhoneApp自動化測試工具總結

無線客戶端的發展很快,特別針對是android和ios兩款無線作業系統的客戶端應用,相應的測試工具也應運而生,這裡主要給大家介紹一些針對iphone app的自動化測試工具。首先,我們把這些測試框架分為三大類 介面測試工具 注入式ui測試工具 錄放式ui測試工具。一 介面測試工具,主要在iphone...