我想在测试开始之前创建服务器,然后在所有测试运行之后终止它。行为描述如下。
我第一次运行测试:
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()