2 回答

TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊
由于引發(fā)的異常,它不會到達(dá)您的第二個(gè)斷言。你可以做的就是以這種方式斷言它的價(jià)值:
def test_scrape():
with pytest.raises(Exception, match='Invalid input') as e:
assert scrape(date='test', x=0, y=0)
我會說您在響應(yīng)時(shí)收到錯(cuò)誤“AssertionError: Pattern 'Invalid input' not found in "date data 'test' does not match format '%Y-%m-%d %H:%M:%S'"代碼是 200 - 所以沒有引發(fā)異常。

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超3個(gè)贊
您的抓取函數(shù)引發(fā)異常,因此函數(shù)調(diào)用之后的行將不會執(zhí)行。您可以將最后一個(gè)斷言放在 pytest.raises 子句之外,如下所示:
from scrape import scrape
def test_scrape():
with pytest.raises(Exception) as e:
assert scrape(date='test', x=0, y=0)
assert str(e.value) == 'Invalid input'
添加回答
舉報(bào)