http://drizzlewalk.blog.51cto.com/2203401/1118536

一、maven-surefire-plugin简介
      maven-surefire-plugin支持JUnit和TestNG。默认情况下,maven-surefire-plugin的test目标会自动执行测试源码路径下所有以Test开头、Test或TestCase结尾的的Java类。

二、跳过测试
    如果想跳过测试阶段,可用:

1.  mvn package -DskipTests

想临时性跳过测试代码的编译,可用:

1.  mvn package -Dmaven.test.skip=true

maven.test.skip同时控制maven-compiler-plugin和maven-surefire-plugin两个插件的行为,即跳过编译,又跳过测试。

三、手动指定测试用例
    maven-surefire-plugin的test参数用来指定要运行的测试用例:

1.  //指定测试类

2.  mvn test -Dtest=RandomGeneratorTest

3.  //以Random开头,Test结尾的测试类

4.  mvn test -Dtest=Random*Test

5.  //用逗号分隔指定多个测试用例

6.  mvn test -Dtest=ATest,BTest

test参数必须匹配至少一个测试类,否则会报错并导致构建失败。此时可使用:

1.  mvn test -Dtest -DfailIfNoTests = false

来指定即使没有任何测试用例也不要报错。
四、包含与排除测试用例

1.  <plugin>

2.      <groupId>org.apahce.maven.plugins<groupId>

3.      <artifactId>maven-surefire-plugin</artifactId>

4.      <version>2.5</version>

5.      <configuration>

6.      <includes>

7.          <include>** / *Tests.java</include>

8.      </includes>

9.      </configuration>

10. </plugin>

使用** / * Test.java 来匹配所有以Tests结尾的Java类。两个星号**用来匹配任意路径,一个星号*用来获取除路径风格符外的0个或多个字符。还可使用excludes来排除一些测试类。

五、测试报告
1.基本的测试报告
     默认情况下,maven-surefire-plugin会在项目的target/surefire-reports下生成两种格式的错误报告:

·          简单文本格式

·         与JUnit兼容的XML格式

2.测试覆盖率报告
    Cobertura是一个用来测试覆盖率统计工具。Maven通过cobertura-maven-plugin插件与之集成,命令

1.  mvn cobertura:cobertura

六、运行TestNG测试
    TestNG支持使用xml来配置要运行的测试用例。可用:

1.  <configuration>

2.      <suiteXmlFiles>

3.      <suiteXmlFile>testing.xml</suiteXmlFile>

4.      </suiteXmlFiles>

5.  </configuration>

TestNG还支持测试组

1.  <configuration>

2.      <groups>util,medium</groups>

3.  </configuration>

七、重用测试代码
    通过配置maven-jar-plugin将测试类打包

1.  <plugin>

2.      <groupId>org.apahce.maven.plugins<groupId>

3.      <artifactId>maven-jar-plugin</artifactId>

4.      <version>2.2</version>

5.      <executions>

6.          <execution>

7.          <goals>

8.          <goal>test-jar</goal>

9.          </goals>

10.     </execution>

11.     </executions>

12. </plugin>

打包后可以声明依赖:

1.  <groupId></groupId>

2.  <artifactId></artifactId>

3.  <version></version>

4.  <type>test-jar</type>

5.  <scope>test</scope>

Maven 单元测试相关推荐

  1. maven 单元测试并行_并行运行单元测试

    maven 单元测试并行 大约是时候单元测试的开发人员能够使用批注在Parallel中运行测试. 在今天的博客文章中,我们将介绍如何使用Easytest提供的注释使传统的Junit测试并行运行. 易测 ...

  2. Maven 单元测试报错:错误: 找不到或无法加载主类 @{failsafeArgLine}

    1.视界 2.背景 Git 下载一个项目:https://github.com/apache/rocketmq-externals 然后运行里面的单元测试类报错 org.apache.rocketmq ...

  3. maven项目打包成zip文件

    1.添加Maven插件 pom.xml <!--maven自定义打包插件--><plugin><artifactId>maven-assembly-plugin&l ...

  4. Maven运行JUnit测试(http://www.360doc.com/content/13/0927/15/7304817_317455642.shtml)

    Maven单元测试 分类: maven  2012-05-09 15:17  1986人阅读  评论(1)  收藏  举报 maven 测试 junit 单元测试 java random 目录(?)[ ...

  5. web安全测试视频课程专题_有关有效企业测试的视频课程

    web安全测试视频课程专题 我已经制作了一些有关有效企业测试的视频. 在实际项目中,我仍然认为该主题非常重要. 这是我在测试Enterprise Java项目中的经验以及一些示例. 1.介绍和有效的M ...

  6. 有关有效企业测试的视频课程

    我已经制作了一些有关有效企业测试的视频. 我仍然在现实世界项目中看到这个主题的巨大重要性. 这是我在测试Enterprise Java项目中的经验以及一些示例. 1.介绍和有效的Maven使用 在此视 ...

  7. 三年程序员生涯的感悟、总结和憧憬

    不知不觉已经走入这行三年,虽没多大成就,但三年的努力和磨练也算是个成手了. 在将要从三年迈向五年经验之际,不禁开始思考,怎样才能向软件开发高手迈进. 三年的工作时间,说来不长,但回头想想却也像过了小半 ...

  8. 猪齿鱼平台CI流程总结--遇到的坑

    1.指定maven仓库 猪齿鱼平台可以创建自己的maven仓库(nexus),但是目前上传jar包有问题,所以我们需要先使用之前的maven仓库:http://119.3.***.***:8051/r ...

  9. 【GitHub】在Github主页显示你的个人简历

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 QQ群:1040082875 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有 ...

最新文章

  1. Redis基础教程第7节 - Set
  2. java newline_Java BufferedWriter.newLine()方法示例
  3. qt designer 插入图片_高清免版权免费图片素材哪里找?
  4. log4j中用变量配置日志输出文件位置
  5. windows系统中eclipse C开发环境的架设
  6. java实用教程——组件及事件处理——布局管理(五种)
  7. 九阴真经战无不胜服务器位置,九阴真经各门派武功风水宝地分类及坐标大全
  8. 【社招/实习】百度大搜索招聘NLP、搜索方向算法工程师!
  9. 计算字符在字符串中出现的次数
  10. 错误率_全新的支付方式来了 错误率可控制在百万分之一
  11. [RK3288][Android6.0] 系统按键驱动流程分析【转】
  12. 面试官:有没有比读写锁更快的锁?
  13. 利用JavaScript实现在网页上图片上一张下一张的操作
  14. 游戏辅助制作技术分析
  15. 2021MySql-8.0.26安装详细教程(保姆级)
  16. PHP 实现爱查快递接口
  17. chrome浏览器无法安装crx插件的解决方法(以翻译插件为例)
  18. PL2303驱动移植到ARM
  19. html模版i7,2017万元级专业制图 Intel最新七代i7-7700K专业建模渲染设计师电脑配置推荐...
  20. 异常信息:test02FlexController”不存在,wufa

热门文章

  1. [Python爬虫] 中文编码问题:raw_input输入、文件读取、变量比较等str、unicode、utf-8转换问题
  2. C# 文件操作之创建文件夹
  3. C# 数据库存储过程的讲解应用
  4. iOS之深入解析如何使用Block实现委托方法
  5. iOS之Socket的使用-AsyncSocket
  6. Check failed: weights_.Size() == num_row_ (38997 vs. 383852) : Size of weights must equal to number.
  7. LeetCode Algorithm 148. 排序链表
  8. 数据库开发——MySQL——单表查询
  9. 【IT资讯】华为“鸿蒙”所涉及的微内核究竟是什么
  10. javaweb家居用品线上销售系统_智能家居订单管理系统方案设计路线