grails - 在 Jenkins 上运行 Geb 测试

标签 grails selenium functional-testing geb

我使用 Geb 为我的 Grails 应用程序编写了一些功能测试。我已将测试配置为与 this example project 相同,这使您可以 specify a list of browsers可以运行测试。

当我在 Firefox 上本地运行测试时,测试通过了。但是,如果我在 Jenkins 上运行它们,它们就会失败,因为 Firefox 无法在 headless 模式下运行。这个问题的一个常见解决方案似乎是使用 XVFB 来模拟显示器,以便 Firefox 可以在 headless 机器上运行。我已在 Jenkins 计算机上成功安装了 XVFB,但不确定需要哪些额外配置才能使 XVFB 与运行功能测试的 Jenkins 作业配合使用?

有一个XVFB Jenkins plugin可用,我应该使用这个还是还有其他人们已经成功的方法?

最佳答案

我真的不记得为什么我们没有使用 Xvfb Jenkins 插件,但这就是我们的设置方式:

  • 让 Xvfb 作为服务在您的从站上运行,提供特定的显示,例如 99。
  • 设置一个环境变量,让用于测试的浏览器知道要附加到哪个显示器,即 DISPLAY=:99 作为测试之前执行的作业的配置步骤,我们使用 EnvInject Plugin那个

关于grails - 在 Jenkins 上运行 Geb 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23872238/

相关文章:

java - 奇怪的 float 除法结果

grails - 在 Spring Security SavedRequest 中忽略 WebSocket 连接

grails - GSP页面中针对模型对象的Groovy/Grails工具套件(GGTS)代码辅助

python - 无法通过Python使用IEDriverServer和Selenium提取页面标题和页面源

grails - 我可以将服务注入(inject)到 Grails 的过滤器中吗?

java - 如何使用 selenium-java 单击 href 链接

selenium - 在 Jenkins 中通过 run.bat 文件运行我的 git 测试时在类路径异常中找不到类

ruby - 在命令行上将参数传递给 Rspec 测试

symfony1 - 如何在 Symfony 1.4 中在正文中 POST JSON 进行功能测试

php - 使用 Codeception 功能测试来发布数据