51Testing软件测试论坛

标题: 单元测试(UnitTesting): TestNG + Jacoco + Gradle 配置篇 [打印本页]

作者: 做自己的女王ヽ    时间: 2019-1-23 16:46
标题: 单元测试(UnitTesting): TestNG + Jacoco + Gradle 配置篇
TestNG 在build.gradle的配置

基于gradle的项目关于TestNG的配置:

  1. dependencies {
  2.     compile('org.testng:testng:6.9.5')
  3. }
复制代码

创建test Task

  1. test {
  2.     ignoreFailures = true
  3.     useTestNG()
  4.     reports.html.enabled = true
  5. }
复制代码

Jacoco的配置

基于gradle项目的jacoco:

  1. apply plugin: 'jacoco'

  2. jacoco {
  3.     toolVersion = '0.8.1'
  4.     reportsDir = file("$buildDir/jacocoReport")
  5. }
复制代码

创建jacoco report task:

  1. jacocoTestReport {
  2.     reports {
  3.         xml.enabled false
  4.         csv.enabled false
  5.         html.enabled true

  6.         xml.destination file("${buildDir}/reports/jacoco/jacocoReport/jacocoXml.xml")
  7.         csv.destination file("${buildDir}/reports/jacoco/jacocoReport/jacocoCsv.csv")
  8.         html.destination file("${buildDir}/reports/jacoco/jacocoReport/jacocoHtml")
  9.     }
  10. }
复制代码

如何执行?

在项目里面执行下面的命令

  1. ./gradlew clean test jacocoTestReport
复制代码

Note: 如果在Spring Boot的框架下运行,需要在build.gradle中加下面一段,否则TestNG的test case虽然会被编译,但是执行会被skipped,报No Source错误:

  1. tasks.withType(Test) {
  2.     scanForTestClasses = false
  3.     include "**/*Test.class" // whatever Ant pattern matches your test class files
  4. }
复制代码







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2