作自動化測試以前,你必需要了解的

前言java

隨着軟件測試技術的發展,人們已經從最初的純粹的手工測試轉變爲手工與自動化測試技術相結合的測試方法。近年來自動化測試愈來愈受到人們的重視,對於自動化測試的研究也愈來愈多。python

我在作自動化測試期間經歷了很多的坑,有被動的坑,也有本身主動挖的坑,因此在這裏作了一些總結。其實主要是總結下自動化測試的一些基礎的內容,例如什麼時候進行自動化、如何自動化、爲什麼要自動化等等。web

>>1. 什麼是自動化測試app

首先是把人爲驅動的測試行爲改爲機器執行,經過設計的測試用例,由機器按照測試用例的執行步驟對其進行自動操做,輸出結果,由測試人員進行比較。框架

其次自動化測試每每經過一些測試工具或框架,編寫自動化測試用例,來模擬手工測試。工具

最後自動化測試能極大的節省人力、時間和硬件資源,提升測試效率。post


>>2. 爲何要進行自動化測試?單元測試

大體總結爲6點測試

1)減小手工測試中的重複性工做,提升測試人員的工做成就感和幸福感ui

2)提升測試用例的執行效率,實現快速的自動化迴歸測試,快速的給予開發團隊質量反饋

3)減小測試人員的數量,提升開發和測試的比例,節省企業的人力成本

4)在線產品的運行狀態監控

5)插入大量的測試數據

6)發現更多的BUG


>>3. 什麼樣的項目須要作自動化?(dev手一抖,auto忙一宿)
1)  需求變動慢

2)週期長

3)腳本可重複利用

4)產品型項目:每一個項目只改進少許的功能,但每一個項目必須反反覆覆的測試那些沒有改動過的功能

最主要的是要結合公司的情況,若是迭代週期過短,時間又不夠,那麼就不適合。

舉例來講:若是說你花一個月開發自動化系統,但腳本只針對這個系統,若是下一個系統作自動化,腳本又要從新寫,成本就會較高,重複利用率較低。

 

>>4. 工做過程當中對於自動化測試的一些誤解

1)有了自動化測試再也不須要手工測試。

2)自動化測試對有些測試好比:本地化測試、用戶體驗測試、探索性測試,測試環境搭建方面並不能徹底代替手工測試。

3)自動化測試是對產品的運行,對測試點要有必定的手工測試基礎,自動化測試和手動測試相輔相成。

4)自動化測試並不只指自動化運行測試產品,數據處理也是很是重要的一個環節。

 

>>5. 平常的測試工做中,常常會引入新的需求或是修復bug,那麼如何肯定新的需求的加入或bug的修復沒有在原有功能中引入新的bug呢?

 

我想爲了保證原有功能的正常,對原功能進行測試,這也是測試過程當中很是重要的一個環節。

那麼在每次修復bug或新增需求時,咱們都須要手動的測試全部功能嗎?在沒有更多的成本、資源、時間時,你依舊須要手動的進行測試,但其成效是否能達到要求呢?

因此這個時候自動化測試的需求就來了,在咱們的平常測試工做中,有大量的迴歸測試須要咱們把它們給自動化了。


>>6. 是否須要系統足夠穩定才能夠自動化咱們的測試工做?

通常狀況下是在手工測試完畢,等系統相對比較穩定的時候纔開始自動化測試的。可是有些企業也有同時進行的狀況。

       

>>7. 是否要考慮100%的自動化?

我認爲100%的自動化測試太過保守。對於一個項目來講,應該是有一個合理的自動化測試覆蓋區間,具體多少最好,見仁見智。

少的我見過僅僅用自動化測試覆蓋冒煙測試的,多的見過自動化測試超過90%的,因人而異,因項目而異。

 

>>8. 你的自動化套件壽命足夠長嗎?

若是你選中的自動化場景生命週期不夠長,那麼請不要自動化它,構建自動化的一個基本準則是讓自動化了的測試工做比手工執行成本要明顯下降。

固然若是能將實現自動化測試工做作到平常化、版本化,那麼其成本下降將是明顯的、效率改進也是顯著的、是能夠得到良好的投資回報率的。

 

>>9. 常見的自動化測試的工具

自動化測試工具開發語言:Java、Python等

基礎測試工具

(1)單元測試:junit(java)、unittest(python)

(2)接口測試:httpclient(java)、    restassure(java)、request(python)

(3)UI測試:selenium webdriver( web  )、appium(app)


常見自動化測試工具

(1)接口測試:Jmeter、soapui、postman

(2)UI測試:katalon、Robotframework、Android  

 

>>10. 自動化測試腳本技術

1)線性腳本:錄製、回放

2)結構化腳本:含有控制腳本執行的指令,支持順序、選擇和循環三、共享腳本:能夠被多個測試用例使用,腳本之間能夠互相調用

3)數據驅動腳本:數據驅動腳本是將測試輸入存儲在獨立的文件中,腳本中只存放控制信息。

4)關鍵字驅動腳本:關鍵字驅動腳本其實是較重複的數據驅動技術的邏輯擴展 ,即測試用例的執行步驟(操做,操做對象,操做值)存放在文件中,直接執行。

 

寫在最後
自動化測試技術在現代測試技術中是有必定優點的,可是自動化測試不是在任何狀況下都必須的,適當的、或者是有效成本投入,須要咱們在合適的時機引入自動化測試,使手工測試和自動化測試實現完美結合。

 

<END>

關注公衆號,回覆【資料】可得到自動化,python,jmeter等視頻教程

相關文章
相關標籤/搜索