[英]Pytest. Test parametrization does not work
代碼如下:
import pytest
@pytest.mark.parametrize("x", [0, 1])
@pytest.mark.parametrize("y", [2, 3])
def test_foo(x, y):
assert x > y
但是通過運行測試系統給出:
進程以退出代碼 0 結束
有人知道為什么它不起作用嗎?
試試這個代碼:
import pytest
@pytest.mark.parametrize(params=["x", [0, 1]])
def test_foo(x, y):
assert x > y
我已經運行了你的代碼,它工作正常並且也給出了斷言錯誤。
在這里,您似乎正在像普通的 python 文件一樣運行測試。
您需要將文件作為 pytest 測試運行。 為此,您需要設置 pytest 配置。
在 pycharm、Go 中運行 -> 編輯配置... 然后單擊模態對話框左上角的 +。 Select "python tests" -> py.test 然后我給它起一個名字,比如 "All test with py.test"
select 目標:模塊名稱或測試文件的路徑 > 點擊 OK
現在從運行菜單 select 運行“使用 py.test 進行所有測試”或按 shift+f10
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.