あなたが最初Pytestから学びたい場合は、記事ああこのシリーズを見ることができます!
https://www.cnblogs.com/poloyy/category/1690628.html
序文
- ユニットテストとは異なり、パイソンを使用してpytestがアサートアサートキーワードに来ます
- 式の最終結果が真である限り、その後、他のユースケースの実装を成功によって、アサーション、またはユースケースを失敗したとして、キーワードは、一つの式缶に続いてアサート
小さな栗のassert
私は簡単な理由が何であるかを確認するためにいくつかのヒント、それを実行した後に、例外をスローした後、出力したいです
#異常情報 DEF F(): リターン 3。
DEFのtest_function(): = F() アサート 2 == 0%は、" :%S偶数、電流値決定"%のA
結果
一般的なアサーション
一般的に使用されるPythonのアサートアサーションメソッドの内部で実際にpytest主張は以下のとおりであります
- アサートXX:XX決意はtrueです
- ないXX主張:XX裁判官は真ではありません
- 分析を含んB:Bでアサート
- == bのアサート:= B解析
- = B :! A = Bの分析アサート
異常なアサーション
Pytest.raisesコンテキストマネージャとして使用することができる例外は、対応する異常のカテゴリにスローされる場合、それを取得することができます
#アサーション異常 DEFのtest_zero_division(): pytest.raisesと(ZeroDivisionError): 1/0
アサーションシーン:
あなたがしたい例外をスローすることが期待されていないことを主張
コードの実行:
1/0
期待される結果:
例外キャストはZeroDivisionErrorです:ゼロによる除算
どのようにアサート:
通常、異常値の型と値をアサート
詳細な説明
ここで例外タイプは1/0 ZeroDivisionErrorあり、異常値がゼロ値をdivisionby
#アサート異常詳述 DEFのtest_zero_division_longを() :AS excinfo pytest.raises(ZeroDivisionError)と 1/ 0 #タイプのアサーション例外タイプ アサート excinfo.type == ZeroDivisionErrorの #のアサート異常値の値 アサート " ゼロ除算" における STR(excinfo。値)
excinfo
:それは異常情報の一例です
主要な特性:
.TYPE
、
.Valueの
、
.traceback
注:
異常型は、引用符なしでアサーションタイプ、アサーション値の値は、STRを転送する場合