模擬試験のインターフェイスフレームワークFBIユニットテスト
unittest.mockは、テスト用のPythonライブラリです。これは、テスト・システムの一部を置き換えることにより、モックオブジェクトの使用を可能にし、どのようにそれらがアサートされ使用されています。
モックの使用を前提
インタフェースのテストを行うことで、開発はまだ未完成のインターフェースの実装は、インタフェースのテスト自動化コードが完成への道、あなたがモックは、ライブラリオブジェクトを使用する必要があり、この時間ではありませんシミュレートインターフェースの応答結果を、開発までの待ち時間は、完全なインタフェース機能、そしてモック応答シミュレーション結果でありますコードの削除失われ、全体のインタフェースのテスト自動化プロジェクトが完了です。
使用するモックシンプル
パッケージガイド(モックオブジェクトライブラリを別途インストールする必要はありません、unittestのライブラリモックオブジェクトライブラリが統合されています)
from unittest.mock import Mock
シンプルな送信要求応答をシミュレート
送信要求機能を準備
def sendUrl():
# 下面的url为伪接口,访问不通
url = "http://127.0.0.1/login"
return requests.get(url=url)
直接印刷結果に応じて、送信要求関数を呼び出します
response = sendUrl()
print(response)
- >>結果は次の通り(URLアドレスが偽のアドレス、アクセスの障壁があるので、それは文句を言うでしょう)
シミュレートされた応答を使用してモック結果
- RETURN_VALUE:返された結果を設定します
- sendUrl:作成したモックオブジェクト、関数名の名前は次の呼び出しと一致するために
sendUrl = Mock(return_value={"code": 0, "msg": "登陆成功"})
response = sendUrl()
print(response)
- 次のように>>結果は以下の通りであった:応答結果が結果セットオブジェクトはモック返されます
使用モックシミュレーション例外をスロー
- side_effect:例外をスロー
- AssertionErrorが:例外の種類
sendUrl = Mock(side_effect=AssertionError('地址错误'))
response = sendUrl()
- >>以下のような結果は次のとおりです。成功したスロー例外