问题描述
我正在从 Python 文件中读取我的测试数据,如下所示。
//testdata.py -- 它是一个集合列表。
TEST_DATA = [
(
{"test_scenario":"1"},{"test_case_id":1}
),(
{"test_scenario":"2"},{"test_case_id":2}
)
]
现在我将此测试数据用作 pytest 测试文件的一部分。
// test.py
// import testdata
test_data = testdata.TEST_DATA
start = 0
class TestOne():
@pytest.mark.parametrize(("test_scenario,testcase_id"),test_data)
@testcaseid.marktc[test_data[start][1]["test_case_id"]]
def testfunction():
global start
start = start + 1
// Doing test here.
现在,当我打印 start 时,它会不断更改其值。但是当我尝试检索 pytest 结果时,我仍然不断得到 start = 0,因为我的测试用例 ID 没有被正确记录。
我可以吗
附言这是我目前能够存储测试数据的最佳方式。
这是我定义 testcaseid.marktc 的方式。 // testrailthingy.py
class testcaseid(object):
@staticmethod
def marktc(*ids):
return pytest.mark.testrail(ids=ids)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)