java - 如何为通过 Jenkins 创建的 jar Artifact 设置入口点

标签 java maven jenkins jar testng

我正在开发自动化测试框架,为此我使用 testNG、Java、Jenkins。

我使用 Jenkins 创建了一个 jar Artifact 。通过 Jenkins,我将参数发送到 pom.xml 以告诉 pom.xml 要执行哪个 TestNG.xml 文件。 TestNG.xml 包含测试列表。

因此,一旦 jenkins 构建成功,我将获取该 jar,并且每次在站点上部署任何更改时我都想执行它。 知道如何通过设置入口点来执行这个 jar 吗?这可能是一个愚蠢的问题,但我问这个问题是因为我是 Java、Jenkins 的新手。

我的 pom.xml 中有以下值

<plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.18.1</version>
        <configuration>
            <suiteXmlFiles>
                <suiteXmlFile>.\\testNG-xml\\regression\\MyTest.xml</suiteXmlFile>
                </suiteXmlFiles>
                <systemPropertyVariables>
                        <env1>${env1}</env1>
                        <env2>${env2}</env2>
                </systemPropertyVariables>
            </configuration>
        </plugin>

最佳答案

所以我从你的问题中了解到的是,你已经在 J​​enkins 中创建了一个项目来构建你的测试代码。测试代码位于与被测应用程序不同的存储库中。现在,只要应用程序处于测试状态,你就需要执行这些测试测试有一个提交。

可以选择在 Jenkins 中执行后置脚本。您需要遵循的步骤如下: 1) 创建构建测试代码的项目的副本。 2) 将存储库 URL 替换为待测应用程序存储库的 URL。 3) 将存储库轮询间隔设置为 15 分钟。 4) 使用 Jenkins 中的构建后操作功能,使用所需的参数调用 TestCase JAR。

此处需要注意的重要一点是,此外部测试套件生成的任何测试报告都必须由您备份。

所以流程如下: Jenkins 将在 15 分钟轮询您的开发分支,如果找到 checkin ,它将创建构建。如果 checkin 不是破坏构建的 checkin ,并且构建成功,则将运行构建后操作,这实际上会运行您的测试。

关于java - 如何为通过 Jenkins 创建的 jar Artifact 设置入口点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35441924/

相关文章:

java - 在多模块maven项目中查找 Unresolved maven依赖项

jenkins - 如何创建一个无法直接调用而只能从另一个作业调用的 "private"Jenkins 作业?

java - 比较器 .comparing().reversed() 奇怪的行为/没有按预期工作

spring - 得到错误 : Could not load JDBC driver class [org. postgresql.Driver]

java - 在 pom.xml maven 中添加远程存储库 jar 文件作为依赖项

java - 在所有子模块中显式声明 maven-compiler-plugin

jenkins - 如何在 Jenkins 声明式管道的所有阶段获取 Jenkins 凭据变量

java - 如何使用jsoup提取某些标签后的文本

java - Java真的那么跨平台吗?

java - setItems() 之后无法看到表格 View 中单元格中的数据