【发布时间】:2023-01-11 04:06:34
【问题描述】:
我正在测试需要通过客户端请求启动和关闭 gRPC 服务器的服务。在我的一组集成测试中,我需要指定一组应该在集合中运行任何给定测试之前发生的测试前和测试后操作。 理想情况下,我想将这些测试前/测试后方法保留在 conftest.py 中,或者将它们组织到单独模块中的它们自己的类中。
我可以通过在 conftest.py 中执行以下操作来指定应该运行的第一个测试(启动服务器的测试):
@pytest.fixture(scope="session", autouse=True)
def test_start_server():
# code to start server
问题是,当我执行另一个测试模块时,仅执行 test_start_server 函数,而不执行文件中后续的 test_shutdown_request 函数:
def test_shutdown_request():
# code to shutdown server
有没有办法指定要运行的最后一个测试(测试后操作)?
如果可能的话,我不想包含任何第三方依赖项或插件,因为我的项目已经足够了。
【问题讨论】:
标签: python pytest integration-testing