Pre-requisite: gradle and java is installed on your machine.
- Create a gradle project (I used Eclipse IDE)
- Inside the project you will see two folders main and test under src folder. Under main you write your development code and under test you write your unit (Junit) tests and integration tests.
- Add the below lines of code to your build.gradle file present in the root directory.
apply plugin: "jacoco"
jacocoTestReport{
reports {
xml.enabled false
csv.enabled false
html.destination "${buildDir}/jacocoHtml"
}
}
If Junit dependency is not present then add it:
dependencies {
testCompile 'junit:junit:4.12'
}
- Create a Example.java class under main folder.
public class Example {
public long someRandomMethod(int a, int b) {
if (a > 10 && b > 10){
return a+b;
}
else{
return a-b;
}
}
}
- To verify this method, we will be writing Junit test under test folder with name ExampleTest.java @Test annontation tells Junit that it is a test method to execute.
public class ExampleTest {
@Test
public void verifySomeRandomMethod() {
Example junitTest = new Example();
junitTest.someRandomMethod(11, 12);
}
}
- Go to the root directory of your project. And execute the below command to execute Junit test.
gradle clean test
- Junit results report will be generated /JunitJacocoExample/build/reports/tests/test/classes/ExampleTest.html
- To generate code coverage report, execute the below command.
gradle jacocoTestReport
- Code coverage report will be generated /JunitJacocoExample/build/jacocoHtml/index.html
Code coverage at class level can be verified by navigating to Example.java
Clone/download the working project from https://github.com/shankybnl/junit-jacoco-example