我正在尝试使用集成的 JavaFX 2.2 自动测试在 Java 7u6 上运行的 JavaFX 2 应用程序。为此,我将Jemmy3和JemmyFX构建并集成到我的构建环境中。一个简单的冒烟测试在所有相关操作系统上运行。
作为下一步,我想在持续部署过程中运行测试。由于目前的 CI 服务器运行在 OpenSUSE 上,JavaFX 并没有官方支持,所以我在虚拟机中设置了一个 Ubuntu Server 安装,并安装了 gtk2。
为了弥补缺乏完全成熟的窗口系统的问题,我尝试在Xvnc和Xvfb上运行测试,但无济于事。
在Xvnc上,测试失败
Prism ES2 Error - nInitialize: glXChooseFBConfig failed
而在Xvfb上,他们给了我
Xlib: extension "RANDR" missing on display ":10".
一篇博文建议安装gtk-engines-pixbuf
以缓解第二个问题,但这只是改变了错误消息中的显示数量。
现在,我召唤StackOverflow的JavaFX知识并问
- 你知道如何解决上述错误吗?
- 您是否在(无头)CI 服务器上成功运行了 JavaFX 2 测试或机器人交互?
- 您是如何配置该系统以使其正常工作的?