• 《Maven实战》第10章 使用Maven进行测试


    • 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没绑定
      • 通过以上配置,将分别打包项目主代码和测试代码
      •  
     
  • 相关阅读:
    CSP -- 运营商内容劫持(广告)的终结者
    vue学习:解决Apycharm的 * is only available in ES6(use 'esversion: 6') 问题
    nvm、node、npm安装以及pycharm配置eslint
    python中的daemon守护进程实现方法
    python语言基础问题汇总
    python -- DNS处理模块dnspython
    Python ping 模块
    如何把Python脚本导出为exe程序
    从实际案例聊聊Java应用的GC优化
    Python类(六)-静态方法、类方法、属性方法
  • 原文地址:https://www.cnblogs.com/yeyang/p/9131034.html
Copyright © 2020-2023  润新知