robotframework-介面測試詳解
最近做介面自動化測試的專案組越來越多了,打算後面寫一個RF+requests做介面測試的系列文件,總結遇到的問題,也幫助新入門的同學有個瞭解,如發現我文件中的不足,請提出意見或建議,以期共同進步!!!
一、環境準備
1、安裝robotframework環境
2、相關庫:requests,RequestLibrary
3、會抓包,不論是工具或者F12
首先我們用工具抓到此介面的相關資訊,下圖是用F12得到的
在上面的介面請求中可以獲得以下幾個資訊
協議:https
host:testerhome.com
URI:/topics/8746
method:get
無傳參
三、測試程式碼以及詳解
根據抓包資訊寫自動化程式碼如下
第一步:建立一個別名為testerhome的session
第二步:get請求,因為沒有引數所以只加一個uri
第三步:斷言介面返回code
第四步:列印介面返回資訊,以便其他斷言
開始做介面測試的時候會對resp.status_code、resp.content等這樣的寫法感到迷茫,因為返回值資訊裡面並沒有看到,搞不清是從哪裡來的,其實在requests/models/Response的方法中可以看到
全部的屬性你可以順著這個方法往下找,其他的:
['__attrs__', '__bool__', '__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__getstate__', '__hash__', '__init__', '__iter__', '__module__', '__new__', '__nonzero__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setstate__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_content', '_content_consumed', 'apparent_encoding', 'close', 'connection', 'content', 'cookies', 'elapsed', 'encoding', 'headers', 'history', 'is_permanent_redirect', 'is_redirect', 'iter_content', 'iter_lines', 'json', 'links', 'ok', 'raise_for_status', 'raw', 'reason', 'request', 'status_code', 'text', 'url']
頻繁用到的:
content: 響應body的內容,二進位制編碼,如果返回只有文字內容,和text差不多
cookies:響應回寫的cookies,cookieJar類物件
headers: 響應頭內容
json(): 響應body內容,json格式
status_code: 狀態碼
text: 響應body的內容,預設unicode編碼
這次就先寫到這裡吧,後面會寫一下上傳附件介面相關的,有感興趣的也可以留言給我,謝謝!!