pytest之assert斷言


assert

pytest允許您使用標准Python斷言來驗證Python測試中的期望和值。例如,你可以寫下

# content of test_assert1.py
def f():
    return 3
def test_function():
    assert f() == 4

斷言f()函數的返回值,接下來會看到斷言失敗,因為返回的值是3,判斷等於4,所以失敗了

異常信息

如果想在異常的時候,輸出一些提示信息,這樣報錯后,就方便查看是什么原因了

def f():
    return 3

def test_function():

    a = f()
    assert a % 2 == 0, "判斷a為偶數,當前a的值為:%s"%a  

運行結果

================================== FAILURES ===================================
________________________________ test_function ________________________________

    def test_function():
    
        a = f()
>       assert a % 2 == 0, "判斷a為偶數,當前a的值為:%s"%a
E       AssertionError: 判斷a為偶數,當前a的值為:3
E       assert (3 % 2) == 0

test_03.py:9: AssertionError
========================== 1 failed in 0.18 seconds ===========================

這樣當斷言失敗的時候,會給出自己寫的失敗原因了E AssertionError: 判斷a為偶數,當前a的值為:3

常用斷言

pytest里面斷言實際上就是python里面的assert斷言方法,常用的有以下幾種

  • assert xx 判斷xx為真
  • assert not xx 判斷xx不為真
  • assert a in b 判斷b包含a
  • assert a == b 判斷a等於b
  • assert a != b 判斷a不等於b  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM