我正在尝试测试我班级中指定的方法。我一直在做这个全局传递到我的方法,如
csv.preprocess_col(df, field, remove_invalid_rows_or_raise_exception =0)
使用全局df到路径。
但是现在我想通过参数传递函数来做test_df(df)
而不是常规test_df()
来测试我的函数(csv.preprocess_col)
但是我不断得到这个夹具{{ 1}}未找到错误。
任何人都知道如何解决它?
只是一个奇怪的问题,对于pytest,可以通过global将参数传递给函数吗?
答案 0 :(得分:1)
pytest支持several well-integrated ways中的测试参数化:
pytest.fixture()允许在夹具功能级别定义参数化。
@ pytest.mark.parametrize允许在函数或类级别定义参数化,为特定的测试函数或类提供多个参数/ fixture集。
pytest_generate_tests可以实现您自己的自定义动态参数化方案或扩展。
一些例子here。