About:
- How to start a project with good engineering practices.
Dependencies Used:
- JUnit
Build Tool:
- Maven
Build Plugins Used:
- Maven surefire (for unit tests)
- Maven failsafe (for integration tests)
- Jacoco (for line and branch coverage on unit tests)
- Pitest (for mutation testing on unit tests)
Unit Tests:
mvn test
- To see jacoco output go to: target/jacoco-ut/index.html
Integration Tests:
mvn integration-test
Mutation Testing:
mvn test org.pitest:pitest-maven:mutationCoverage
- To see pitest output go to: target/pit-reports/index.html
Apply Coverage Rules (for Jacoco & Pitest):
mvn verify
Package Application:
mvn clean package
- and then you can run it with the following:
java -jar target/base-1.0-jar-with-dependencies.jar
Docker execution:
mvn clean package
in order for the jar to be generateddocker build -t base .
in order to create an image called base from a Dockerfile residing in the current directory. -t is the tag name aka the image namedocker run base:latest
to create a container from that image and run the application.