Maven 和 Jenkins 集成 Selenium 教程
Jenkins 是什么 Selenium?
Jenkins 是 Hudson 实验室开发的领先的开源持续集成工具。它是跨平台的,可以在 Windows、Linux、Mac OS 和 Solaris 环境。Jenkins 是用 Java。Jenkin 的主要用途是监控任何作业,可以是 SVN 签出、cron 或任何应用程序状态。当作业中发生特定步骤时,它会触发预配置的操作。
Jenkins 的重要功能
- 变更支持: Jenkins 生成在 SVN 等存储库中完成的所有更改的列表。
- 永久链接: Jenkins 提供了最新构建或失败构建的直接链接,可用于轻松沟通
- 安装方式: Jenkins 易于安装,可以使用直接安装文件(exe)或 war 文件来使用应用程序服务器进行部署。
- 电子邮件整合: 可以配置 Jenkins 以通过电子邮件发送构建状态的内容。
- 易于配置: 在 Jenkins 上配置各种任务很容易。
- TestNG 测试: Jenkins 可以配置为运行自动化测试构建 测试 每次构建 SVN 之后。
- 多台虚拟机: 可以配置 Jenkins 以在多台机器上分发构建。
- 项目建设: Jenkins 记录了 jar 的详细信息、jar 的版本以及构建和 jar 编号的映射。
- 插件: 3rd 可以在 Jenkins 中配置 party 插件来使用特性和附加功能。
为什么詹金斯和 Selenium?
- 运行 Selenium Jenkins 中的测试允许您在每次软件更改时运行测试,并在测试通过时将软件部署到新环境。
- Jenkins 可以安排您的测试在特定时间运行。
- 您可以保存执行历史记录和测试报告。
- Jenkins 支持 Maven 构建和 测试与验证 持续集成中的项目。
Maven 是什么 Selenium?
Maven 是一个强大的项目/构建管理工具,基于 POM(项目对象模型)的概念,其中包含项目信息和 Maven 的配置信息,例如构建目录、源目录、依赖项、测试源目录、目标、插件等。
为什么选择 Maven 和 Jenkins
Selenium WebDriver 非常适合浏览器自动化。但是,当使用它进行测试和构建测试框架时,感觉功能不足。将 Maven 与 Selenium 提供以下好处
Apache Maven 为管理测试项目的全生命周期提供支持。
- Maven 用于定义项目结构、依赖关系、构建和测试管理。
- 使用 pom.xml(Maven)您可以配置构建测试和运行代码所需的依赖项。
- Maven 在构建项目时会自动从存储库下载必要的文件。
如何安装 Maven 并使用 TestNG Selenium
下面是安装 Maven 并使用的步骤 TestNG Selenium
在本教程中,我们将使用 Eclipse (Juno)IDE Java 开发商设立 Selenium WebDriver 项目。另外,我们需要添加 m2eclipse 插件到 Eclipse 以促进构建过程并创建 pom.xml 文件。
让我们添加 m2eclipse 插件到 Eclipse 通过以下步骤:
步骤1) In Eclipse IDE,选择 帮助 | 安装新软件 ,来自 Eclipse 主菜单。
步骤2) 在安装对话框中,输入 URL https://www.eclipse.org/m2e/。选择 与...合作 和 m2e 插件如下面的截图所示:
步骤3) 点击 下一篇 按钮并完成安装。
配置 Eclipse 使用 Maven
安装 m2e 插件后,我们现在需要创建 Maven 项目。
步骤1) In Eclipse IDE,选择创建一个新项目 文件 | 全新发布 | 其他 ,来自 Eclipse 菜单。
步骤2) 点击 全新发布 对话框中选择 Maven的 | Maven 项目 然后单击“下一步”
步骤3) 点击 新建 Maven 项目 对话框中选择 创建一个简单的项目 然后单击“下一步”
步骤4) 在中输入 WebdriverTest 组 ID: 和 工件 ID:然后单击“完成”
步骤5) Eclipse 将创造 Webdriver测试 具有以下结构:
步骤6) 右键点击 JRE 系统库 并选择 物业 选项。
点击 JRE 系统库的属性 对话框中,确保 工作区默认 JRE 被选中并单击确定
步骤7)。 选择 pom.xml ,来自 项目浏览器..
pom.xml 文件将在编辑器部分中打开
步骤8) 添加 Selenium,Maven, TestNG, 朱尼特 依赖 pom.xml 中的节点:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.45.0</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.8.8</version>
<scope>test</scope>
</dependency>
</dependencies>
步骤9) 创建一个新的 TestNG 类。在“包名称”中输入“example”,在“NewTest”中输入“ 姓名:文本框并点击 完成 按钮,如以下屏幕截图所示:
步骤10). Eclipse 将创建 NewTest 类,如下面的屏幕截图所示:
步骤11) 将以下代码添加到 新测试 类:
此代码将验证 Guru99 的称号 Selenium 页
package example;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.Assert;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.AfterTest;
public class NewTest {
private WebDriver driver;
@Test
public void testEasy() {
driver.get("https://demo.guru99.com/test/guru99home/");
String title = driver.getTitle();
Assert.assertTrue(title.contains("Demo Guru99 Page"));
}
@BeforeTest
public void beforeTest() {
driver = new FirefoxDriver();
}
@AfterTest
public void afterTest() {
driver.quit();
}
}
步骤12) 右键单击 WebdriverTest 并选择 TestNG | 转换成 TestNG.
Eclipse 将创建 testng.xml,其中说明你只需要运行一个名为 新测试 如以下截图所示:
更新项目并确保文件出现在树中 包浏览器 (右键单击项目 - 刷新)。
步骤13) 现在你需要通过这个运行测试 测试ng.xml。
所以,去吧 运行配置 并创建新的启动项 TestNG,选择项目和领域 套件 as 测试ng.xml 并点击运行
确保构建成功完成。
步骤14)。此外,我们还需要添加
- Maven 编译器插件
- Maven-surefire-插件
- 测试ng.xml
到 pom.xml.
maven-surefire-plugin 用于配置和执行测试。此处插件用于配置 testing.xml TestNG 测试并生成测试报告。
maven-compiler-plugin 用于帮助编译代码并使用特定的 JDK 版本进行编译。将以下代码片段中的所有依赖项添加到 pom.xml 中节点:
步骤15) 要运行e Maven 生命周期中的测试,右键单击 WebdriverTest 并选择 运行方式 | Maven 测试.Maven 将从项目执行测试。
确保构建成功完成。
如何将 Jenkins 与 Selenium 网络驱动程序
以下是安装 Jenkins 并将其配置为使用 TestNg 运行 Maven 的步骤 Selenium
安装
步骤1) 在MyCAD中点击 软件更新 http://jenkins-ci.org/ 并下载适合您操作系统的正确软件包。安装 Jenkins。
步骤2) 将Jenkins解压到指定文件夹,运行exe文件,如下图所示:
步骤3) In Jenkins 1.607 设置 窗口点击 下一篇 按钮。
步骤4) 点击 安装 按钮。
步骤5) 安装完成后,在浏览器窗口中导航到 Jenkins Dashboard(默认情况下为 http://localhost:8080)。
步骤6) 点击 新物品 链接创建 CI 作业。
步骤7) 选择 Maven 项目单选按钮,如以下屏幕截图所示:
使用构建 Maven 项目 选项,Jenkins 支持构建和测试 Maven 项目。
步骤8) 单击“确定”按钮。在 Jenkins 仪表板中创建了一个名为“WebdriverTest”的新作业。
步骤9) 在MyCAD中点击 软件更新 管理詹金斯 => 配置系统 如以下屏幕截图所示。
单击“JDK 安装”并配置 JDK,如以下屏幕截图所示:
步骤10) 去 构建 新工作的一部分。
步骤11) 点击 在断裂前, 按钮。
步骤12) 在 WebdriverTest 项目页面上,单击 立即建造 链接。
Maven 将构建该项目。然后它将具有 TestNG 执行测试用例。
步骤13) 构建过程完成后,在 Jenkins Dashboard 中单击 Webdriver测试 项目
步骤14) WebdriverTest 项目页面显示构建历史记录并链接至结果,如以下屏幕截图所示:
步骤15) 点击“最新测试结果”链接查看测试结果,如以下截图所示:
步骤16)。选择特定的构建,您将通过点击“控制台输出“。
调度 Jenkins 自动执行。
安排构建(Selenium 测试是 Jenkins 的重要功能之一,它根据定义的标准自动触发构建。Jenkins 在构建触发器配置下提供了多种触发构建过程的方法。
例如:
在 Schedule 文本框中输入 0 23 * * *,如以下屏幕截图所示。这将在每天晚上 11 点触发构建过程
不使用 Maven 来使用 Jenkings
要在 Jenkins 中运行纯 TestNg 脚本,请在 build 中输入以下内容
D:>java -cp “Pathtolibfolder\lib\*;Pathtobinfolder\bin” org.testng。TestNG 测试ng.xml
- 点击保存按钮。
- 注意:以上命令中需要添加lib和bin文件夹的实际路径。
- 保存命令后,Jenkins 将在预定义的时间内构建项目,并且该命令将使用 TestNG.
- 结果将存储在自定义报告 HTML 文件中,可以通过 Jenkin 配置通过电子邮件发送
- 代码的输出将是
使用 Jenkins 的好处
- 早期问题发现——在软件开发的早期阶段就能发现错误
- 自动集成 – 无需单独努力即可集成所有变更
- 安装程序——可在任何开发阶段使用的可部署系统
- 记录——维护零件建造记录
- 支持和插件:Jenkin 受欢迎的原因之一是其拥有庞大的社区支持。此外,还有许多现成的插件可供您扩展其功能。




































