目錄
接口定義:
接口普遍有兩種意思,一種是API(Application Program Interface),應用編程接口,它是一組定義、程序及協議的集合,通過API接口實現計算機軟件之間的相互通信。而另外一種則是Interface,它是面向對象語言如java,c#等中一個規范,它可以實現多繼承的功能。接口測試中的接口指的是API。
為什么要使用接口:
假如公司的產品前端開發還沒開發完,接口開發好了。有天領導說,小王,你測下這個登錄功能,要是你不懂接口的話就會對領導說這個功能測不了啊,頁面沒開發完。領導會把你!@¥@)¥!
接口測試是不需要看前端頁面的,可以更早的介入到測試工作中,提高工作效率。
根據測試金字塔,越底層成本越低,一個底層的bug可能會引起上一層的多個bug,所以測試越底層,越能保證產品的質量,也越能節省測試的成本。而單元測試一般是由開發來完成的,所以對於測試來說,接口測試是非常必要的。
對於自動化測試來說,UI的變動性最大,所以UI自動化測試的維護成本很高。而接口的改動很小,所以接口自動化測試是最實用,最節約成本的。
2. 基本流程
接口功能自動化測試流程如下:
需求分析 -> 用例設計 -> 腳本開發 -> 測試執行 -> 結果分析
2.1 示例接口
手機號碼歸屬地
接口地址:http://apis.juhe.cn/mobile/get
返回格式:json/xml
請求方式:get
請求示例:http://apis.juhe.cn/mobile/get?phone=手機號&key=您申請的KEY
3. 需求分析
需求分析是參考需求、設計等文檔,在了解需求的基礎上還需清楚內部的實現邏輯,並且可以在這一階段提出需求、設計存在的不合理或遺漏之處。
如:手機號歸屬地接口,輸入不同號碼段的手機號,查看手機號歸屬和手機號碼屬於哪個運營商
4. 用例設計
5. 腳本開發
5.1 模塊安裝
使用pip命令安裝即可:
pip install requests
5.2 接口調用
使用requests庫,我們可以很方便的編寫上述接口調用方法(如輸入phone=手機號,示例代碼如下):
在實際編寫自動化測試腳本時,我們需要進行一些封裝。
如需源碼,請關注私聊本人。謝謝
我們按照測試用例設計,依次編寫每個功能的自動化測試腳本即可。
5.3 結果校驗
在手工測試接口的時候,我們需要通過接口返回的結果判斷本次測試是否通過,自動化測試也是如此。
對於本次的接口,輸入手機,我們需要判斷返回的結果resultcode是不是等於200結果分頁時需要校驗返回的結果數是否正確等。完整結果校驗代碼如下:
如需源碼,請關注私聊本人。謝謝
運行結果:
5.4 生成測試報告
用例執行完之后,那就需要發報告給領導。
那么我們使用HTMLTestRunner第3方模塊插件生成html格式測試報告
5.5發送郵件報告
測試完成之后,我們可以使用zmail模塊提供的方法發送html格式測試報告
基本流程是讀取測試報告 -> 添加郵件內容及附件 -> 連接郵件服務器 -> 發送郵件 -> 退出,示例代碼如下:
6. 結果分析
打開完成后生成的測試報告,可以看出本次測試共執行了2條測試用例,1條成功,1條失敗
最終發送測試報告郵件,截圖如下:
如需源碼,請關注私聊本人。謝謝
如果對軟件測試、接口測試、自動化測試、技術同行、持續集成、面試經驗交流。感興趣可以進到893694563,群內會有不定期的分享測試資料。
如果文章對你有幫助,麻煩伸出發財小手點個贊,感謝您的支持,你的點贊是我持續更新的動力。