使用pytest,我试图测试一个像分层场景的树。 允许使用文档的结构的例子:pytest树状数据嵌套参数化
Document --- Chapter --- Paragraph
1 n 1 n
凡文档包含多个章节;一章包含多个段落。
当开始测试新文档时,需要运行一些设置代码;当新章节开始时,需要运行其他一些设置代码;段落也一样。
写成伪代码:
for doc in documents:
setup_doc(doc)
for chapter in doc.chapters:
setup_chapter(chapter)
for paragraph in chapter.paragraphs:
setup_paragraph(paragraph)
test_it(doc, chapter, paragraph)
teardown_paragraph(paragraph)
teardown_chapter(chapter)
teardown_doc(doc)
如果我们有如下的数据:
Document Alpha
chapter A
Paragraph A1
Paragraph A2
chapter B
Paragraph B1
我希望收集到的测试案例是:
test_it[Alpha, A, A1]
test_it[Alpha, A, A2]
test_it[Alpha, B, B1]
我已经尝试了pytest_generate_tests,类场景,灯具和参数化测试函数的不同组合,但没有b能够实现这一点。
任何指针将不胜感激。