什麼是mock介面?
mock通常是指,在測試乙個物件時,我們構造一些假的物件來模擬與其互動。而這些mock物件的行為是我們事先設定且符合預期。通過這些mock物件來測試物件在正常邏輯,異常邏輯或壓力情況下工作是否正常。
引入mock最大的優勢在於:mock的行為固定,它確保當你訪問該mock的某個方法時總是能夠獲得乙個沒有任何邏輯的直接就返回的預期結果。mock介面就是用一些合理的手段構造物件去模擬真實介面,達到我們需要的測試效果。
開發mock介面的目的:
1、輔助測試,暫時代替第三方介面 或者 用來代替沒有開發好的介面
2、檢視資料,為了避免其它人連線資料庫檢視其它資料,直接提供介面查詢想要的資料
mock介面的方法:
1.使用fiddler、charles工具;
2.使用moco jar包;
3.寫**,python可以使用flask框架(輕量級的web開發框架)
python之使用flask框架
import flask, json
# 建立介面後台服務,方便請求介面
server = flask.flask(__name__)
# 裝飾器,將get_all_user()函式變為乙個介面 127.0.0.1:9000/get_user
@server.route(
'/get_user'
, methods=
['get'
,'post'])
defget_all_user()
: all_user =[,
,]res = json.dumps(all_user, ensure_ascii=
false
)# 將list轉換為json串,ensure_ascii為false時,可以包含non-ascii字元
return res
# 啟動服務,debug=true表示修改**後自動重啟;
# 啟動服務後介面才能訪問,埠號為9000,預設ip位址為127.0.0.1
server.run(port=
9000
, debug=
true
)
請求介面,返回結果如下:
python mock介面 ,網路請求2
使用模組 flask 為什麼用,為了本地寫一些介面使用psotman一些工具測試 import flask 輕量級的web開發框架 import tools import json import datetime import time server flask.flask name server....
python mock 打樁丟擲異常
在python的llt測試中,需要保證覆蓋率,但是有乙個問題就是,python 本來就很短,乙個函式可能就幾行,而且工程 為了方便定位錯誤,會在函式的前後包圍try except else塊,這乙個塊就佔了幾行,如果沒乙個函式都無法覆蓋這個異常處理的塊,那麼覆蓋率將會受到很大的影響,這篇部落格演示如...
開發神技能 Python Mock 的入門
ustack.com name 這個是用來命名乙個mock物件,只是起到標識作用,當你print乙個mock物件的時候,可以看到它的name。return value 這個我們剛才使用過了,這個字段可以指定乙個值 或者物件 當mock物件被呼叫時,如果side effect函式返回的是default...