Dou*_*tti 13 python plot matplotlib travis-ci
我有一个包有一个模块,可以帮助用户使用matplotlib生成特定的图.当我在Travis内部的单元测试中调用这些函数时,出现以下错误:
RuntimeError: Invalid DISPLAY variable
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?
生成绘图后,我的函数通常会调用pyplot.show(),这会打开一个需要关闭的窗口.当我在Travis内部的单元测试中调用这些函数时,它们会永远挂起来.
如何测试使用Travis CI生成这些图?
Dou*_*tti 13
要在Travis中设置DISPLAY变量,您需要从VM内部模拟显示.他们xvfb通过在before_scriptyout .travis.yml文件中添加以下内容来教授如何使用它:
before_script: # configure a headless display to test plot generation
- "export DISPLAY=:99.0"
- "sh -e /etc/init.d/xvfb start"
- sleep 3 # give xvfb some time to start
Run Code Online (Sandbox Code Playgroud)
为了让特拉维斯不要挂在地块上,根本就不要打电话pyplot.show().如果你测试太多的情节,请务必打电话pyplot.close()或者它会抱怨有太多的打开图像.