目前,我正在使用 testcafejs 为 React 项目进行自动化 UI 测试。
我想在 Jenkins 等持续集成环境中运行这些测试。我已经添加了 browserStack 插件,以便使用不同的浏览器和操作系统在本地运行它们。
但是,我想将它们集成到 Jenkins 中,但并不总是使用 browserStack 配额进行日常检查。关于如何在 Jenkins 的不同浏览器中运行它们的任何建议?
目前,我正在使用 testcafejs 为 React 项目进行自动化 UI 测试。
我想在 Jenkins 等持续集成环境中运行这些测试。我已经添加了 browserStack 插件,以便使用不同的浏览器和操作系统在本地运行它们。
但是,我想将它们集成到 Jenkins 中,但并不总是使用 browserStack 配额进行日常检查。关于如何在 Jenkins 的不同浏览器中运行它们的任何建议?
TestCafe 具有广泛的命令行界面,使其能够很好地适应任何流行的持续集成系统。
以下是有关如何将 TestCafe 与 Jenkins 集成的说明。最新的知识库文章可以在TestCafe 开源版本的文档主题中找到:
如果您使用的是旧版TestCafe(版本 15.1),则可以使用以下知识库文章:
您可能还希望查看Jenkins 的 TestCafe 插件,该插件将屏幕截图和视频附加到 Jenkins 测试结果页面。
在这里,我们将使用在 GitHub 上的单独存储库 - ci-integration-demo中发布的测试。如果您使用不同的版本控制系统,请搜索将其与 Jenkins 集成的插件。
打开您的项目并从右侧窗格中选择配置。
向下滚动到Source Code Management部分并选择 Git,然后指定Repository URL。
转到构建部分,找到构建应用程序的步骤并在其后添加一个新步骤。为此,请单击添加构建步骤并选择运行 shell 命令的步骤类型。
在命令框中,键入以下内容。
npm install testcafe testcafe-reporter-xunit
此命令安装主testcafe
模块和一个以 xUnit 格式保存测试运行报告的插件。
在前一个步骤之后添加另一个执行 shell 命令的步骤。此步骤将运行 TestCafe。
键入以下命令。
node_modules/.bin/testcafe chrome tests/**/* -r xunit:res.xml
tests
这将从Google Chrome 中的目录运行 TestCafe 测试。测试结果以res.xml
xUnit 格式保存到文件中。
转到 Post-build Actions 部分,然后单击Add post-build action。在下拉列表中,选择发布 JUnit 测试结果报告。
在测试报告 XMLs字段中,指定测试报告文件:res.xml
.
单击保存,您将被导航到项目页面。
点击立即构建以立即构建项目。
在项目页面的构建历史部分中,单击构建并从下拉菜单中选择测试结果。
Jenkins 将显示一个测试运行报告,您可以在其中查看有关测试结果的一般信息。您可以单击单个测试以获取详细信息。