我有一个需要访问X11的Python软件包。我想使用Xvfb,这样我就不必在构建机器上安装真正的X11——在这种情况下是Hudson。因此,我想在py.test启动时启动Xvfb服务器,对所有测试使用该服务器,然后关闭它。
如何做到这一点?
注意:我可以在每个测试类的SetUp(TearDown)中启动(停止)Xvfb服务器,但这会出现两个问题:第一,这是浪费的。第二,由于我正确终止了服务器,所以要么出现奇怪的 Fatal IO error 0 (Success) on X server
错误,要么出现挂起的Xvfb进程无法关闭。如果有人感兴趣,这是使用xvfbwrapper时的情况。