今年遇到了幾個(gè)問(wèn)題,與接口的功能和性能相關(guān),恰巧最近公司也在組織以冒煙測試為主題的活動(dòng),于是乎突發(fā)奇想,尋思著(zhù)能否將接口測試與冒煙測試結合起來(lái),發(fā)掘一些新的接口測試思路與方法。
平時(shí)對接口測試關(guān)注的比較少,大部分接口功能都是通過(guò)應用前段的功能測試案例覆蓋了,并沒(méi)有單獨安排針對接口安排測試案例,因此真正到了實(shí)施時(shí),我才發(fā)現對于接口測試還缺乏一個(gè)準確的定義。求助度娘,百度知道上的定義如下:接口測試是測試系統組件間接口的一種測試。接口測試主要用于檢測外部系統與系統之間以及內部各個(gè)子系統之間的交互點(diǎn)。測試的重點(diǎn)是要檢查數據的交換,傳遞和控制管理過(guò)程,以及系統間的相互邏輯依賴(lài)關(guān)系等。這個(gè)定義與我們之前的理解并沒(méi)有太大差異,簡(jiǎn)而言之,開(kāi)放平臺應用通過(guò)接口服務(wù)實(shí)現應用間消息和數據交換,因此我們的測試重點(diǎn)就聚焦在消息和交換兩個(gè)問(wèn)題上了。
設計思路:
交換這個(gè)問(wèn)題會(huì )簡(jiǎn)單一些,畢竟應用常用的接口服務(wù)類(lèi)型主要就是HTTP和SOCKET兩種,而針對這兩種類(lèi)型服務(wù)的測試方法也很多,百度一下會(huì )有很多相關(guān)測試方法和框架。對于我們這些不懂編程的小白,python自然是首選。python提供了最基本的request和httplib2庫實(shí)現報文的發(fā)送和接收,當然對于HTTP類(lèi)型接口還會(huì )區分為post和get,這個(gè)在request庫中也都有對應的方法,我們通過(guò)一張接口登記表來(lái)記錄每一個(gè)接口的類(lèi)型、地址和方法,這些信息都可以從配置管理系統中獲得。
消息可以簡(jiǎn)單的視為接口測試案例,比交換問(wèn)題復雜很多,需要考慮很多因素,我們總結為以下四個(gè)主要問(wèn)題:
1、消息獲取的途徑有哪些;
2、消息是否能夠覆蓋所有的程序分支;
3、如何判斷返回結果的正確性;
4、測試效率問(wèn)題。
下面我將逐一介紹我們的解決方案:
原文轉自:http://blog.tingyun.com/web/article/detail/1340