
一、概述
在創業公司里,專案都比較趕,測驗人員也是疲于測驗功能模塊,基本沒空去寫什么自動化測驗,以提升回歸測驗的效率,但一個必須承認的事實便是,依賴測驗人員去做全面回歸測驗,保證上線質量,是不可取的,因為難度太大,成本太高,因此自動化測驗還是要做一些的,具體如何著手呢,下文說一下我這邊的做法,
注意:本文主要描述一下業務介面自動化測驗的方案,至于GUI自動化測驗和壓力自動化測驗不在本文的討論范圍內,

二、什么是自動化測驗
定義:把人對軟體的部分測驗動作轉化為由機器來執行,
自動化測驗只能部分替代人工,不要指望所有業務場景都通過自動化case來驗證,
三、做自動化測驗的動機
最大的動機:提升回歸測驗的效率,
為了讓垂直拆分出去的微服務能獨立發展,不耦合太多不相關的業務邏輯,一般會有一些聚合的微服務應用,用于呼叫多個后端微服務,匯總資料后提供給前端,在創業公司里,建議先做聚合服務的自動化自測,原因是:
- 聚合層是提供給小程式/APP/H5
等用的,聚合匯總了各種后端服務,針對其做自動化測驗,可以用相對低的成本,盡量多的覆寫業務case,至于針對后端的各個微服務介面做自動化的,實施起來代價比較大,有大量的代碼成本和維護成本,可以后續再考慮, - 聚合服務也有很多業務介面,不可能都去寫對應的自動化測驗代碼,建議先做主流程介面的自動化測驗,比如一個電商的聚合層應用,像商詳、購物車、首頁、訂單結算頁、下單,可以先做,重要業務介面的自動化測驗case,盡量做到多而全,爭取全面覆寫,
四、資料創建的時機和手段
介面自動化測驗中,第一個要解決的問題,就是測驗資料的準備,
資料創建的時機:

建議使用即時創建的方案是,原因如下:
- 自動化case之間保證獨立性和相互不影響,實在太重要了,而即時創建資料就是保證這個的重要前提,且實施起來不難,雖然開箱即用
也能做到,但是代價太大,需要有專門的測驗資料構建平臺,成本有些大; - 環境穩定性問題,可以通過時間戳開的方式,例如:晚上跑自動化測驗,
- 如果后續自動化case多了,即時創建的方式,會導致case執行時間長,可以通過并行執行的方式,對剛搞自動化測驗的,需要執行的case的量也不大啦,
資料創建的手段,一般有三種:
- 呼叫后端服務api創建資料;
- 手寫sql創建資料;
- 組合1和2;
大部分情況下,使用第一種方式就行了,因為造資料的后端介面,大部分都是有的,對于少部分沒有的,則手寫sql創建資料,
五、介面入參格式和回傳值斷言
- 介面入參格式
測驗團隊熟悉哪種就用哪種,excel或者json或者完全用代碼,
- 介面回傳值斷言
同上,測驗團隊熟悉哪種就用哪種,以excel為例,期望的回傳值也可以一并寫在excel里,自動化case呼叫介面獲取到業務資料后,與excel中的期望值進行斷言操作即可,
六、撰寫自動化case的語言
測驗團隊熟悉哪個語言就用哪個,如果是Python那就最好了,

- List item
七、執行環境
- 將自動化測驗代碼,部署到一個獨立的自動化測驗機器上,使用jenkin job執行自動化測驗代碼;
- 被測驗的目標應用,建議重新搭建一套,
八、test dashboard
case跑完后,需要生成測驗覆寫率報告和列出執行成功和失敗的case,
以上筆者的經歷更像一張橫向的知識網,創建了一個交流平臺 914172719 ,群內有各種技術同行交流、學習資料、面試經驗等,其中用到jenkins、docker、moutebank、python編程等,還需要花更多的精力去深入學習,當每項技能都能掌握到一定深度,才能稱為一個完整的知識體系,
最后: 可以關注公眾號:傷心的辣條 ! 進去有許多資料共享!資料都是面試時面試官必問的知識點,也包括了很多測驗行業常見知識,其中包括了有基礎知識、Linux必備、Shell、互聯網程式原理、Mysql資料庫、抓包工具專題、介面測驗工具、測驗進階-Python編程、Web自動化測驗、APP自動化測驗、介面自動化測驗、測驗高級持續集成、測驗架構開發測驗框架、性能測驗、安全測驗等,
如果我的博客對你有幫助、如果你喜歡我的博客內容,請 “點贊” “評論” “收藏” 一鍵三連哦!
好文推薦
轉行面試,跳槽面試,軟體測驗人員都必須知道的這幾種面試技巧!
面試經:一線城市搬磚!又面軟體測驗崗,5000就知足了…
面試官:作業三年,還來面初級測驗?恐怕你的軟體測驗工程師的頭銜要加雙引號…
什么樣的人適合從事軟體測驗作業?
那個準點下班的人,比我先升職了…
測驗崗反復跳槽,跳著跳著就跳沒了…
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/297450.html
標籤:其他
