服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - testNG项目通过idea Terminal命令行执行的配置过程

testNG项目通过idea Terminal命令行执行的配置过程

2021-10-09 01:33jiangger Java教程

这篇文章主要介绍了testNG项目通过idea Terminal命令行执行,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

背景:

本地编写的很多testNG测试用例,可能需要对接其他人员,运用其他形式执行,例如将测试用例达成jar包,由运维执行,需要提供执行命令,提供前需要本地先验证是否可执行通过。

一、maven配置

1.官网下载maven(https://maven.apache.org/download.cgi),下载最新版本,解压到制定文件夹:

testNG项目通过idea Terminal命令行执行的配置过程

2.配置环境变量,以win10为例:

新建系统变量MAVEN_HOME,填写下载解压后的文件地址,注意是bin目录的上一级目录

testNG项目通过idea Terminal命令行执行的配置过程

编辑Path变量,在末尾加上:

testNG项目通过idea Terminal命令行执行的配置过程

3.检验,cmd,进入终端,输入mvn -v ,显示以下信息说明配置完成

testNG项目通过idea Terminal命令行执行的配置过程

二、Idea执行配置【注意配置好maven/jdk环境(JDK下载参照以前教程)变量后需要重启idea】

1.在pom.xml引入依赖:

  1. <build> 
  2.  
  3. <sourceDirectory>src/main/java</sourceDirectory> 
  4.  
  5. <testSourceDirectory>src/main/java</testSourceDirectory> 
  6.  
  7. <finalName>${project.artifactId}</finalName> 
  8.  
  9.  
  10.  
  11. <plugins> 
  12.  
  13. <plugin> 
  14.  
  15. <groupId>org.apache.maven.plugins</groupId> 
  16.  
  17. <artifactId>maven-compiler-plugin</artifactId> 
  18.  
  19. <configuration> 
  20.  
  21. <source>7</source> 
  22.  
  23. <target>7</target> 
  24.  
  25. <encoding>UTF-8</encoding> 
  26.  
  27. </configuration> 
  28.  
  29. </plugin> 
  30.  
  31. <plugin> 
  32.  
  33. <groupId>org.apache.maven.plugins</groupId> 
  34.  
  35. <artifactId>maven-surefire-plugin</artifactId> 
  36.  
  37. <version>2.6</version> 
  38.  
  39. <!--jar--> 
  40.  
  41. <configuration> 
  42.  
  43. <argLine> 
  44.  
  45. -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/1.8.10/aspectjweaver-1.8.10.jar" 
  46.  
  47. </argLine> 
  48.  
  49. <testFailureIgnore>true</testFailureIgnore> 
  50.  
  51. <!-- <testNGArtifactName>org.testng:testng</testNGArtifactName>--> 
  52.  
  53. <forkMode>once</forkMode> 
  54.  
  55. <!--<skipTests>true</skipTests>--> 
  56.  
  57.  
  58.  
  59. <skipTests>false</skipTests> 
  60.  
  61. <suiteXmlFiles> 
  62.  
  63. <suiteXmlFile>suites/test.xml</suiteXmlFile> 
  64.  
  65. </suiteXmlFiles> 
  66.  
  67.  
  68.  
  69. <properties> 
  70.  
  71. <property> 
  72.  
  73. <name>usedefaultlisteners</name> 
  74.  
  75. <value>false</value> 
  76.  
  77. </property> 
  78.  
  79. <property> 
  80.  
  81. <name>listener</name> 
  82.  
  83. <value>org.uncommons.reportng.HTMLReporter,org.uncommons.reportng.JUnitXMLReporter</value> 
  84.  
  85. </property> 
  86.  
  87. </properties> 
  88.  
  89. <forkMode>always</forkMode> 
  90.  
  91. </configuration> 
  92.  
  93. <!--jar--> 
  94.  
  95. <dependencies> 
  96.  
  97. <dependency> 
  98.  
  99. <groupId>org.aspectj</groupId> 
  100.  
  101. <artifactId>aspectjweaver</artifactId> 
  102.  
  103. <version>1.8.10</version> 
  104.  
  105. </dependency> 
  106.  
  107. </dependencies> 
  108.  
  109. </plugin> 
  110.  
  111. <!--jar--> 
  112.  
  113. <plugin> 
  114.  
  115. <groupId>org.apache.maven.plugins</groupId> 
  116.  
  117. <artifactId>maven-assembly-plugin</artifactId> 
  118.  
  119. <version>3.0.0</version> 
  120.  
  121. <configuration> 
  122.  
  123. <archive> 
  124.  
  125. <manifest> 
  126.  
  127. <addClasspath>true</addClasspath> 
  128.  
  129. <mainClass>com.uiautotest.platformsys.JavaRunXml</mainClass> 
  130.  
  131. </manifest> 
  132.  
  133. </archive> 
  134.  
  135. <descriptorRefs> 
  136.  
  137. <descriptorRef>jar-with-dependencies</descriptorRef> 
  138.  
  139. </descriptorRefs> 
  140.  
  141. </configuration> 
  142.  
  143. <executions> 
  144.  
  145. <execution> 
  146.  
  147. <id>make-assembly</id> 
  148.  
  149. <phase>package</phase> 
  150.  
  151. <goals> 
  152.  
  153. <goal>single</goal> 
  154.  
  155. </goals> 
  156.  
  157. </execution> 
  158.  
  159. </executions> 
  160.  
  161. </plugin> 
  162.  
  163. <plugin> 
  164.  
  165. <groupId>org.apache.maven.plugins</groupId> 
  166.  
  167. <artifactId>maven-shade-plugin</artifactId> 
  168.  
  169. <version>3.0.0</version> 
  170.  
  171. <configuration> 
  172.  
  173. <!-- put your configurations here --> 
  174.  
  175. <transformers> 
  176.  
  177. <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"
  178.  
  179. <manifestEntries> 
  180.  
  181. <Main-Class>org.testng.TestNG</Main-Class> 
  182.  
  183. </manifestEntries> 
  184.  
  185. </transformer> 
  186.  
  187. </transformers> 
  188.  
  189. </configuration> 
  190.  
  191. <executions> 
  192.  
  193. <execution> 
  194.  
  195. <phase>package</phase> 
  196.  
  197. <goals> 
  198.  
  199. <goal>shade</goal> 
  200.  
  201. </goals> 
  202.  
  203. </execution> 
  204.  
  205. </executions> 
  206.  
  207. </plugin> 
  208.  
  209. </plugins> 
  210.  
  211. </build> 

2.在Terminal执行:mvn clean test -Dsurefire.suiteXmlFiles=suites/test.xml,即可执行成功。 或者直接执行 mvn test【执行的suites/test.xml已经通过上述的pom.xml配置过了,所以可以直接执行】

testNG项目通过idea Terminal命令行执行的配置过程

3.执行命令其实来源于maven helper依赖:

testNG项目通过idea Terminal命令行执行的配置过程

到此这篇关于testNG项目通过idea Terminal命令行执行的文章就介绍到这了,更多相关idea Terminal命令行执行内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/jiangger/p/15011079.html

延伸 · 阅读

精彩推荐