技术文章

了解最新技术文章

当前位置:首页>技术文章>技术文章
全部 111 常见问题 5 技术文章 106

使用 UI 脚本从 TestRail 触发 Jenkins 构建

时间:2023-12-25   访问量:1017

本文是使用TestRail 简化测试自动化系列博客文章的一部分,旨在指导您在 TestRail 中集中测试自动化工作,如下图所示。

KDFAYjlKUWpkTxEZcoxQ45QSd2GInk4DIXs s61UnePi6fpEkyg0Z0RZ5c6rJ0w8le5RMwSzdqw61oo1rbAd7sZdLc09TOowut8FR9bqTxKQzigmexhjUIZhZrDYYngVEVYMUnP2Oskm XBwXzQa OUWHKSZHH BN4TashY1Fi2 uJAeWHuU0l0nKA

大多数将自动化测试与 TestRail 触发器集成并在 TestRail 外部执行自动化测试(例如作为持续集成系统的一部分)并使用TestRail 的 API提交测试结果的团队。

但是,如果您希望将常规测试活动集中在 TestRail 上并最大程度地减少系统之间的导航,您还可以实现一种机制,通过使用UI 脚本直接从 TestRail 触发 Jenkins 测试运行在本博客系列的最后一篇文章中,我们将使用TestRail Customizations GitHub 存储库上提供的 UI 脚本示例之一来指导您完成该过程。此 UI 脚本在 TestRail 上的测试运行和结果页面中集成了 Jenkins 构建小部件。通过实施最后一步,您可以执行自动化测试并检索结果,而无需离开 TestRail,最终关闭循环。

配置詹金斯

要允许 TestRail UI 向您的 Jenkins 实例直接发出请求,您需要在 Jenkins 端允许跨源资源共享 (CORS)。尽管这通常被认为是安全风险,但采取正确的预防措施后,您可以利用此机制允许 TestRail 访问您的 Jenkins 作业数据,而不会增加风险。为此,您应该按照以下步骤允许 CORS 进入您的可信 TestRail 域。

1. 进入管理 Jenkins > 插件管理器,搜索并安装Jenkins 插件的 CORS 支持

2. 转到管理 Jenkins > 配置系统

3. 在页面底部的 CORS Filter 部分,插入所需的参数

cors-filter.PNG

4. 单击“保存”接受更改

配置 UI 脚本

您可以从 TestRail Customizations GitHub下载Jenkins 构建 UI 脚本。然后,要添加 UI 脚本,请转到 TestRail 的管理区域,选择“管理”>“自定义”>“添加 UI 脚本”,然后将整个 UI 脚本复制并粘贴到“配置”文本框中。在下面的示例中,我们提供了您可以使用的 UI 脚本示例,但如果您想了解如何开发自己的自定义脚本或进一步自定义这些示例,请查看 UI脚本文档页面

ui_scripts_page.PNG

您只需更改脚本上的几个值即可正确配置它以访问您的 Jenkins 实例并从所需作业检索数据。第一件事是将主机变量设置为 Jenkins URL。然后您需要更改jobs变量的示例您可以拥有任意数量的工作。每个作业的名称可以是您希望在触发按钮上显示的任何名称,路径是作业的相对路径,当您导航到 Jenkins 上的作业时,您可以从浏览器复制该路径。

/* CONFIG */const host = "https://INSTANCE.testrail.io";const username = null;               // Enter username and key only if you fully trust your organization members as this may pose a security riskconst key = null;                    // Generate an API key on your Jenkins user accountconst requestInterval = 10000;       // Time between requests to Jenkinsconst project = "PROJECT NAME";      // Name of the project to load the triggers for (use value null to enable for all projects)const jobs = [
  {
    "name": "Run Automated Tests",
    "path": "job/Automated%20Tests%20Project"
  }];

注意:如果您完全信任组织中的所有 TestRail 用户,则可以输入 Jenkins 用户名和密钥,但请注意,这会带来安全风险,因为 UI 脚本(和凭据)将以纯文本形式在浏览器上提供。我们建议将这些变量保留为空,并让用户通过 UI 配置其凭据。

正在运行的 UI 脚本

如前所述,UI 脚本在右侧面板中添加了 Jenkins 集成部分,可以将其配置为显示您的自动化测试作业(或任何其他作业,如果您愿意)。在面板上,我们可以看到一个名为“自动测试触发器”的新部分以及您在 UI 脚本上配置的作业。对于每个作业,都有一个触发按钮,该按钮将启动新的构建,并链接到 3 个最新构建,并使用指示构建状态的颜色代码。在本例中,红色表示失败,绿色表示成功,蓝色表示仍在运行。

KxA00XrPBC6EizNjjeWhJPTlBrMkSshCSXZkI1a4e mR9133wLE33 sqczX2xSq4NR VKhHxwwpg0V Pt fi ORnLJdkkZt9Jz bRu7oCjb40w kigDah1FMd8weA7yBcMJbP0NUddwhC3VE3vJjL2t71Px PS3Zy0phn2nhpVe14wKQfy JQbiJ8DA

单击“运行自动化测试”,您将通过 Jenkins 的 API 触发您的作业。新的作业构建将在运行时以蓝色显示在触发按钮下方的列表中,然后显示为红色或绿色,具体取决于最终构建结果。构建列表由链接组成,因此如果您想深入了解更多构建细节,您可以轻松导航到 Jenkins。

最后结果

通过实施本系列的最后一步,您刚刚完成了循环并实现了下图中的工作流程。

6gALIJek5JLJ 2vMUea6nRMMbgvl8z 0l6vuSa2cn3JXZNSFj3gTybs43WtSnFFFBA KndNE5JQ6ozrSRRtmkh40esEaAxwGKSarUS3BiLWwEngqdPrBo96tSHtGT06czZ N5edMpZOWcxbl3ofLAczVT2

有了这个工作流程,触发和访问自动化测试信息就成为 TestRail 的一部分。任何在 TestRail 中执行日常活动的用户都可以启动自动化测试套件,并在 CI 工具上完成测试运行后立即接收测试结果,而无需在 TestRail 外部导航。

现在您已将测试结果集中在 TestRail 中,您可以检查自动化测试运行的结果以及失败测试的错误消息。您还可以在报告上汇总手动和自动测试信息。通过这样做,您可以深入了解应用程序的测试覆盖率,甚至跟踪测试自动化进度。


上一篇:如何编写有效的测试用例(使用模板)

下一篇:将您的自动化测试结果发送到 TestRail

发表评论:

评论记录:

未查询到任何数据!

在线咨询

点击这里给我发消息 售前咨询专员

点击这里给我发消息 售后服务专员

在线咨询

免费通话

24小时免费咨询

请输入您的联系电话,座机请加区号

免费通话

微信扫一扫

微信联系
返回顶部