在筆者看來接口自動化測試有如下四點優點:
1.提升版本發佈質量;
2.縮短項目週期;
3.發現更多手工測試難以暴露的問題;
4.提升測試效率;服務器
咱們先說第一點:提升版本發佈質量測試
咱們知道,絕大多數問題都會暴露在功能測試階段,若是能在功能測試以前減小Bug數量,那麼必定會減小測試版本的發佈。那麼怎樣減小功能測試時發現的Bug數量呢?就是在作功能測試以前先作一輪接口測試。咱們假設有這樣一個場景,業務新增一個需求,須要增長5個接口,以及十幾張設計圖,開發人員開發接口須要1天時間,可是設計人員設計UI須要3天時間,那麼也就是說手工測試人員只能等3天后才能進行測試。若是這個時候加入接口測試,那麼開發同窗能夠在設計稿以前完成全部接口調試,這樣的話,在功能測試階段必定會減小BUG數量,從而提升版本發佈質量。加密
咱們再說第二點:縮短項目週期設計
其實當實現第一點的時候,就已經實現了縮短項目週期,由於咱們已經提早介入測試,而提早介入測試的目的是爲了發現接口BUG,而解決接口BUG是爲了提升版本質量,版本質量提升了,不出意外,測試周期也就縮短了。調試
咱們再說第三點:發現更多手工測試難以暴露的問題接口
這點就比較深入了,咱們公司以前的項目沒有采起接口加密技術,什麼意思呢?就是我經過抓包數據,能夠抓到全部向服務器發送的請求以及服務器返回的內容。咱們能夠想象一下,若是有用戶經過抓包抓到的數據對服務器進行壓力測試,大機率會形成服務器異常,固然還有其餘狀況,發送非法數據等等,而這些都要咱們在作功能測試時沒法發現的。開發
咱們最後再來講說第四點:提升測試效率自動化
假設A公司提了一個需求,增長一個接口,客戶端不變。按理說來,咱們只要驗證新功能是否存在問題就能夠,沒有必要進行系統測試。但實際上,咱們測試人員內心都會發慌,開發同窗說沒有動其它部分代碼,可是我仍是不放心呀,我仍是要再作一次系統測試。只有作完系統測試後,才能確定開發同窗沒有動其它部分代碼,想一想看,若是是手工測試,那麼時間成本得多高。可是若是加入接口測試呢?你說你沒有動其它部分代碼,那麼我只要對你新發的版本作一次接口測試就好了,若是接口測試用例(舊功能測試用例)經過,那麼能夠說以前功能確實都是正常的,前提是你的接口測試用例寫的很是到位。想一想看,咱們經過接口測試只要幾分鐘就能夠知道新功能的加入是否會對舊功能產生影響,而手工測試則須要半天甚至一天時間。效率