![](/img/trans.png)
[英]Can I use pytest.mark.skipif based on fixture parameter ID?
[英]How to use a fixture in a pytest skipif marker?
我有一个py.test
function 如下所示:
def my_test(self, driver):
# Do something with the driver
它使用driver
夹具(在conftest.py
中定义)。
现在,我需要在运行此测试之前检查一些内容。 如果该检查失败,我需要跳过此测试。 这是我尝试过的:
@pytest.mark.skipif(not driver.check(),
reason="Some check negative.")
def my_test(self, driver):
# Do something with the driver
但是那个标记本身使用了一个夹具(它可能是同一个夹具,也可能是不同的夹具,这里无关紧要)。 有没有一种简单的方法可以在skipif
标记中使用夹具?
为什么不跳过驱动夹具内部的测试? 然后每个fixture 可以自己决定是否需要跳过依赖于它的所有测试。
@pytest.fixture()
def driver():
if not check_driver():
pytest.skip("Driver could not be loaded")
return get_driver()
另请参阅从夹具内部跳过测试
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.