当前位置: 代码迷 >> 综合 >> jenkins+maven+testng+参数化执行测试用例
  详细解决方案

jenkins+maven+testng+参数化执行测试用例

热度:74   发布时间:2023-12-21 00:19:13.0

背景:maven项目执行testng测试套件,不依赖于编译工具,所以使用jenkins来构建执行,同时需要跟进不同的测试环境,需要在jenkins中配置测试环境的变量.

首先我们需要知道执行的顺序,jenkins执行manven项目的pom文件,需要在pom文件中配置testng的执行文件.包括一些参数等.而testng文件就是执行测试文件的一些配置.

1.调试好testng的脚本, 需要把环境变量或者参数化的字段提取出来,放到testng.xml中,配置文件中的name对应test中的parameters.value是和pom文件中的环境变量一致.

PS:testng中的parameters和dataprovider不可以同时使用,如果涉及到配置文件,就直接使用parameters就好.

2.配置pom.xml文件.其中testEnvironment对应testng.xml中的value,suiteXmlFiles对应要执行的xml文件.这里也可以指定绝对路径.

	<!--maven-surefire-plugin的test目标会自动执行测试源码路径(默认为src/test/java/)下所有符合一组命名模式的测试类 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>2.7.1</version><configuration><systemPropertyVariables><testEnvironment>${env}</testEnvironment></systemPropertyVariables><suiteXmlFiles><suiteXmlFile>testng.xml</suiteXmlFile></suiteXmlFiles></configuration>

3.jenkins的配置.新建一个manven项目,然后参数化构建过程

build直接选择pom.xml文件和test命令就可以

也可以添加响应的测试报告邮件通知.

最后的结果就是

最后,这样就不依赖与编译工具,直接构建,如果有修改就直接提交git或者svn更新就可以.