java - Jenkins 中的集成测试

标签 java selenium jenkins server

我想在我的 Java 网络应用程序上使用 Selenium 进行一些集成测试。我已将 Jenkins 设置为当前使用 Ant 脚本构建。

据我了解,Web 应用程序必须先构建、打包并部署到正在运行的服务器,然后才能使用 Selenium webdriver(在本地主机上)进行测试。当我在本地执行此操作时,效果很好。但是在我的 Jenkins 机器上,我需要启动另一台服务器,而不是运行 Jenkins 的服务器,以便在那里部署 war 文件,然后运行测试,对吗?问题是部署是构建后的操作,之后我无法运行任何测试,我可以吗?

最佳答案

为什么不使用 Docker提供构建、部署和测试环境?

它将提供您在 Jenkins 服务器内构建和测试网络应用所需的隔离。

您可以使用 Dockerfile 和构建您自己的容器镜像来定义不同的环境以匹配项目的依赖项。将容器视为非常轻量级的虚拟机。在您的情况下,为了构建和测试您的网络应用程序,我想您至少需要一台安装了 JDK 和 Selenium Webdriver 的机器。

在官方 Docker 容器注册表中有大量图像可用,Dockerhub您可以使用它而不是自己构建。

有关开始使用与 Docker 和 Jenkins 的持续集成的漂亮白皮书,请转到 here

关于java - Jenkins 中的集成测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38012628/

相关文章:

java - 点击 Google 结果建议

java - docker centos :6. 6 镜像 "/bin/sh: java: command not found"java 已安装

bash - Jenkins - 通过 SSH 发布 - EXEC : STDOUT/STDERR - bash: service: command not found

Jenkins 在实际失败时验证 JMeter 构建成功

java - 使用java输入输出

java - 在文本区域中打开特定文本文档

Java 不能重载任何运算符。为什么?

java - 如何将多个组件添加到 JFrame?

javascript - 使用 Selenium 抓取内容不起作用

c# - selenium webdriver C# 多线程