端午節我寫了一個項目,幫助你學習HTTP接口測試。python
GitHub地址:git
https://github.com/defnngj/learning-API-testgithub
整個項目基於Flask和 Requests實現。shell
Flask是Python主流的Web框架,以簡單著稱,它可很是方便的實現API,整個項目中的API都經過一個文件實現。
Requests是模擬HTTP的測試庫,一樣是Python語言的明星庫,它能夠以很是簡單的方式模擬HTTP請求。數據庫
克隆或下載項目,安裝依賴。json
$ pip install -r requirements.txt
啓動Flask項目。api
$ python api_server.py * Serving Flask app "api_server.py" (lazy loading) * Environment:production WARNING: Do not use thedevelopment server in a production environment. Use a production WSGI serverinstead. * Debug mode: on * Running onhttp://127.0.0.1:5000/ (Press CTRL+C to quit) * Restarting withstat * Debugger isactive! * Debugger PIN:208-740-173
接下來,你可根據項目文檔中所提供的Requests例子,調用啓動的服務所提供的接口。app
最簡單的接口調用。框架
import requests r = requests.get("http://127.0.0.1:5000/") result = r.json() print(result)
接口的返回結果。單元測試
{"code": 10200, "message": "Welcome toAPI testing"}
若是,你想知道上面調用的接口是如何實現的,能夠查看api_server.py文件。
# 最簡單的json格式返回 @app.route('/') def hello_world(): return jsonify({ "code": 10200, "message": "Welcome to API testing" })
Flask 實現接口是否是很簡單?固然,還有更多複雜的接口實現,不過,這裏的全部接口實現忽略了數據庫的操做。
若是想作接口自動化測試,請參考tests/目錄,裏面提供了基於unittest 單元測試框架的用例。
若是本項目對你幫助,請幫忙加 star,有什麼問題也能夠經過issues提問。