大佬教程收集整理的这篇文章主要介绍了如何参数化Pytest timeline,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
从 pytest.mark.parametrize
pytest中的 使用固定装置
问题来看,目前似乎无法在中使用固定装置pytest.mark.parametrize
。
考虑以下Pytest:
import pytest
class TimeLine(object):
instances = [0,1,2]
@pytest.fixture
def timeline():
return TimeLine()
def test_timeline(timelinE):
for instance in timeline.instances:
assert instance % 2 == 0
if __name__ == "__main__":
pytest.main([__file__])
该测试test_timeline
使用Pytest固定装置timeline
,其本身具有属性instances
。在测试中迭代该属性,以便仅在每个instance
in的断言均成立的情况下测试才通过timeline.instances
。
但是,我实际上想做的是生成3个测试,其中2个应该通过,其中1个将失败。我试过了
@pytest.mark.parametrize("instance",timeline.instances)
def test_timeline(timelinE):
assert instance % 2 == 0
但这导致
AttributeError: 'function' object has no attribute 'instances'
据我了解,在Pytest固定装置中,函数“成为”其返回值,但是在对参数进行参数化时,这似乎尚未发生。如何以所需的方式设置测试?
以上是大佬教程为你收集整理的如何参数化Pytest timeline全部内容,希望文章能够帮你解决如何参数化Pytest timeline所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。