对我来说很明显:"如何在没有django_db标记的情况下,如何使数据库访问所有测试?">
,但我希望/需要进行多个课程测试,而无需DB访问。当enable_db_access_for_all_tests
处于所有测试中时,如何排除类或方法?
是否有诸如@pytest.mark.no_django_db
或其他可能的解决方案之类的装饰器?
谢谢!
d
标记测试的最灵活的解决方案是在您的conftest.py中使用pytest_collection_modifyitems
挂钩,并有选择地为需要DB访问的那些测试添加标记。这是一个遍历所有收集的测试并在其上添加标记的示例。
def pytest_collection_modifyitems(config, items):
# Do some filtering to items
for item in items:
item.add_marker('django_db')
使用import pdb; pdb.set_trace()
或任何其他调试工具可以安全地检查。