作為開篇,這裡先簡單介紹一下個人情況:
本人非計算機專業的本科畢業,從事軟體測試工作一年多了,同樣的,接觸自動化測試領域也有一年了,打算開個部落格把我在工作中所學到與自動化測試有關的東西分享出來。
好啦,下面開始說正題:
自動化測試自身就是乙個很大的概念。逛過一些測試論壇的童鞋應該會知道qtp和loadrunner等測試工具,一般來說,qtp被劃分為「自動化測試工具」,lr被劃分為「效能測試工具」,而就我看來,這二者都屬於自動化測試工具,明確的說,qtp屬於「自動化功能測試工具」,lr屬於「自動化效能測試工具」,只是一般來講,我們習慣於把「自動化測試」與「自動化功能測試」劃等號。
作為引言,不該把一開篇就把話題扯的那麼大。不過,就個人理解,自動化測試本身就是乙個循序漸進的過程。舉個例子,使用按鍵精靈重複操作滑鼠屬於自動化測試,部署無人值守的環境去完成一整套系統的軟體版本驗證也屬於自動化測試的範圍,而在實現二者的難易程度上卻差了不只幾個檔次。
在剛開始了解自動化測試時,一位前輩把自動化測試分為了三個階段,下面是加上我個人觀點的對這三個階段的理解:
第一階段——測試的自動化:
第一階段的時長因人而異,但一般來講都較快,短則幾日,長則數週。
在這一階段,你需要了解一些基本的自動化工具如何使用。如上文中提到的qtp,你可以通過這些工具的錄製、回放功能來對自動化測試有乙個初步的認識,然後通過編輯錄製好的指令碼實現一些簡單的自動化操作。然後,慢慢脫離錄製與回放,真正實現一些功能點的自動化測試。
以web自動化測試為例,本階段中,需要掌握大部分頁面控制項、元素的識別、操作方法,並在測試指令碼中,完成一些邏輯演算法。
也可以這麼說,第一階段主要依賴的是「工具」。
第二階段——自動化的測試:
開始思考如何模組化的去應用自動化測試,然後通過編寫並整合自動化測試用例指令碼,實現一定功能點的覆蓋面。
完成上述工作,可以意味著已經進入到第二階段的初期,即已經實現了「自動化的測試」。
個人覺得,第三階段有點類似於自動化測試終極目標的意味。因此,若想從第二階段高階,這將是乙個漫長的過程。在本階段,根據每個專案的目標不同,可能需要完成一些特定需求自動化工具的開發或二次開發,並學會使用一些框架來進行測試指令碼的管理與優化。而要完成以上幾點,就真正需要一些程式設計技能、計算機及網路知識的支援了。而這些技能從學習到能夠熟練應用,本身就是需要慢慢積累的過程。
綜上能夠發現,第二階段主要依賴的因素變為了「人」。
第三階段——測試自動化:
到達這一階段,即是要實現真正的無人職守測試,需要將自動化測試的理念應用到軟體驗證與發布流程的每個環節中,實現整套流程的管控。而需要完成這樣的工作,往往需要乙個團隊的人員分別去滲透各個環節,然後再整合到一起才能實現。
最後,在軟體不做大型變更的情況下,對整套測試系統測試範圍、功能的不斷健全和優化。
此階段,「框架」變為了主要因素。
綜上所述,自動化測試的水還是很深的,本人目前也還只是在第二階段晃蕩,因此,後續的文章將會先分享一些自動化測試入門的技術,然後對第二階段中的一些問題進行**。
軟體自動化測試之我見
摘要 作者以自己多年在測試領域尤其是在自動化測試中的經驗,從管理層面講述了自動化測試相對於手動測試的優勢 並且從不同的方面論述了目前大家對於自動化測試的錯誤認識,同時讓大家充分意識到推行自動化過程中會面臨的困難。關健詞 自動化測試 手動測試 如今自動化測試以其執行速度快,結果反饋迅速的最大優點獲得了...
自動化測試 web自動化測試
自動化 由機器裝置代替人為完成制定目標的過程 優點 提高工作效率 減少勞動力 產品規格同一標準 批量生產 自動化測試 讓程式代替人為去驗證程式功能的過程,即在預設條件下執行程式系統 流程確定 搭建自動化框架 編寫測試用例,將其轉化為soupui 介面 自動化測試指令碼 執行自動化測試指令碼 輸出執行...
測試自動化 自動化測試的定義
相關術語 automated testing test tool,automated testing test suite,automated testing test script等.具體參見 http en.wikipedia.org wiki test automation 推薦書籍 1 軟體...