Pytestシリーズ(2) - 詳細なアサーションの使用アサート

あなたが最初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を転送する場合
 
 

おすすめ

転載: www.cnblogs.com/poloyy/p/12641778.html