• 10.2maven-surefire-plugin插件

    • 【生命周期】的【阶段】与【插件】的【目标】绑定
    • default生命周期的test阶段:使用单元测试框架运行测试
    • Maven内置绑定:default生命周期的test阶段与maven-surefire-plugin插件的test目标绑定
    • mvn test 将执行maven-surefire-plugin的test目标
    • maven-surefire-plugin的test目标默认会自动执行测试源码路径(src/test/java)下所有符合下列命名模式的测试类
      • **/Test*.java:任何子目录下所有以Test开头的java类
      • **/*Test.java:任何子目录下所有以Test结尾的java类
      • **/*TestCase.java:任何子目录下所有以TestCase结尾的java类
  • 10.3跳过测试(不建议)
    • mvn package -DskipTests 编译测试代码,但跳过测试
    • mvn package -Dmaven.test.skip=true 跳过编译测试代码,且跳过测试
  • 10.4动态指定要运行的测试用例
    • 使用maven-surefire-plugin的test参数

      • 示例1:mvn test -Dtest=UserSeriviceTest,AccountServiceTest 指定测试类,多个用逗号分隔
      • 示例2:mvn test -Dtest=User*Test 使用*通配符指定测试类
      • 示例3:mvn test -Dtest=User*Test,AccountServiceTest 逗号和通配符*相结合指定测试类
      • 注意:test参数必须指定至少一个测试类,mvn test -Dtest报错导致构建失败。可用mvn test -Dtest -DfailIfNoTests=false解决。
  • 10.5包含与排除测试用例
    • 包含测试用例

    • 排除测试用例
  • 10.6测试报告
    • 10.6.1基本的测试报告

      • 默认情况下,surefire插件在target/sureifire-reports下生成两种测试报告1)简单文本格式2)与JUnti兼容的XML格式
      • 报告说明了哪个方法测试失败、哪个断言失败以及具体的堆栈信息
    • 10.6.2测试覆盖率报告
      • Cobertura:开源的测试覆盖率统计工具。
      • 运行mvn cobertura:cobertura
  • 10.7TestNG测试
    • TestNG
  • 10.8重用测试代码
    • 默认打包时不会打包测试代码。

    • maven-jar-plugin有两个目标jar,test-jar;其中jar与default生命周期的package阶段内置绑定,test-jar没绑定
    • 通过以上配置,将分别打包项目主代码和测试代码
 

《Maven实战》第10章 使用Maven进行测试的更多相关文章

  1. 学习笔记——Maven实战(八)常用Maven插件介绍(下)

    我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven- compiler-plugin完成的.进一步说,每个任务对应 ...

  2. Maven实战(八)——常用Maven插件介绍(下)

    我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven- compiler-plugin完成的.进一步说,每个任务对应 ...

  3. 学习笔记-[Maven实战]-第三章:Maven使用入门(1)

    说明:[Maven实战]一书还介绍了怎么样手工创建Maven工程,学习这本书是为了能尽快在工作中使用,就忽略了手工建工程的部分 如果想了解这部分的内容,可以自己看看书 开始: 1.新建一个maven工 ...

  4. 学习笔记——Maven实战(四)基于Maven的持续集成实践

    Martin的<持续集成> 相信很多读者和我一样,最早接触到持续集成的概念是来自Martin的著名文章<持续集成>,该文最早发布于2000年9月,之后在2006年进行了一次修订 ...

  5. Maven实战(四)——基于Maven的持续集成实践

    Martin的<持续集成> 相信非常多读者和我一样.最早接触到持续集成的概念是来自Martin的著名文章<持续集成>.该文最早公布于2000年9月,之后在2006年进行了一次修 ...

  6. 学习笔记——Maven实战(七)常用Maven插件介绍(上)

    我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven-compiler-plugin完成的.进一步说,每个任务对应了 ...

  7. 学习笔记-[Maven实战]-第三章:Maven使用入门(2)

    使用maven执行编译和测试 1.maven执行编译 (1).在pom.xml上点右键,选择Maven build... (2).在Goals里输入clean complie,执行编译 执行结果: [ ...

  8. 学习笔记-[Maven实战]-第三章:Maven使用入门(3)

    这里说一下在建测试工程里遇到的问题 1.第一次建工程,junit依赖始终没有成功,最后删除现在工程,新建了一个工程就好了 2.使用junit4的问题.工程默认的依赖是junit3.8.1,我改成了4. ...

  9. Maven实战(七)——常用Maven插件介绍(上)

    我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven-compiler-plugin完成的.进一步说,每个任务对应了 ...

随机推荐

  1. 第五篇:使用无缓冲IO函数读写文件

    前言 本文介绍使用无缓冲IO函数进行文件读写. 所谓的无缓冲是指该IO函数通过调用系统调用实现,其实系统调用内部的读写实现也是使用了缓冲技术的. 读写步骤 1. 打开文件 open 函数 2. 读写文 ...

  2. 怎么查看mac系统是32位还是64位的操作系统

    如何查看mac系统是32位还是64位的操作系统 (一)点击工具栏左上角点击 (苹果Logo)标志,关于本机  -->  更多信息 --> 系统报告  -->(左侧栏中)软件 (二) ...

  3. boost::interprocess::managed_shared_memory(2)(std::string)

    #include <iostream> #include <boost/interprocess/managed_shared_memory.hpp> #include < ...

  4. JMeter java.net.URISyntaxException: Illegal character in query at index

    请求参数未编码,会造成请求解析失败.把编码勾上,就可以了.

  5. 160815、mysql主从复制/读写分离

    mysql主从复制主服务器IP:192.168.99.10从服务器IP:192.168.99.20(一)安装mysql(主从服务器操作相同)yum -y install gcc gcc-c++ ncu ...

  6. 关于小程序报错 缺少文件,错误信息:error: iconPath=../images/home.png, file not found

    事实上在小程序中,虽然你的image文件夹是和你index文件夹的父级文件夹并行的文件夹,但是你如果引用的时候,不用去遵循    ../   或者   ./因为在小程序当中他根本不识别.所以要引用的话 ...

  7. TADDConnetion组件,TADOQuery

    一.TADDConnetion 二.TADOQuery 1.RecNo:从1开始 当前记录行数;ADOQuery1.RecNo 选择后一行数据集内容:ADOQuery1.RecNo:=ADOQuery ...

  8. 解决URL地址中的中文乱码问题的办法

    解决URL地址中的中文乱码问题的办法 引言: 在Restful类的服务设计中,经常会碰到需要在URL地址中使用中文作为的参数的情况,这种情况下,一般都需要正确的设置和编码中文字符信息.乱码问题就此产生 ...

  9. [转载]javascript+ajax+jquery教程11--正则表达式

    原文地址:javascript+ajax+jquery教程11--正则表达式作者:morflame 正则表达式可以: 测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个 ...

  10. PYTHON 最佳实践指南(转)

    add by zhj: 本文参考了The Hitchhiker's Guide to Python,当然也加入了作者的一些东西.The Hitchhiker's Guide to Python 的gi ...