在pytest测试开始时创建服务器

我想在测试开始之前创建服务器,然后在所有测试运行之后终止它。行为描述如下。

我第一次运行测试:
1.返回错误(如下)
2.测试失败
3.调用服务器(现在服务器正在运行)

第二次运行测试:
1.返回相同的错误(如下)
2.测试通过
3.服务器已关闭

错误: 发生异常:RuntimeError 无法启动进程服务器

@pytest.fixture(autouse=True,scope="session")
def start_server(xprocess):
    port = 8000
    server_path = py.path.local(__file__).dirpath("service.py")
    xprocess.ensure("server",lambda cwd: ("started",[sys.executable,server_path,port]))
    yield
    xprocess.getinfo("server").terminate()
leqihuan 回答:在pytest测试开始时创建服务器

解决方案:

/home/kublayconc/composer
,

供以后参考,这是pytest-xprocess插件的确切应用。您可以编写如下的简单夹具来启动服务器实例并使它在测试中可用:

webpack@5.6.0
本文链接:https://www.f2er.com/3144216.html

大家都在问