Testing and Coverage Tiles
This page documents tiles that provide testing framework configurations and code coverage reporting for NGSS projects.
failsafe-tile
Configures the Maven Failsafe plugin for integration test execution.
- Purpose
-
Provides standardized configuration for running integration tests in the
integration-testphase using naming conventions like*IT.java. - Features
-
-
Integration test execution configuration
-
Proper test classpath setup
-
Integration with other testing tiles
-
surefire-tile (deprecated)
Configures the Maven Surefire plugin for unit test execution.
- Purpose
-
Provides standardized configuration for running unit tests in the
testphase using naming conventions like*Test.java. - Features
-
-
Unit test execution configuration
-
Test reporting configuration
-
Memory and JVM argument settings
-
all-tests-with-coverage-tile (deprecated)
Comprehensive testing tile that combines unit testing, integration testing, and code coverage reporting.
- Purpose
-
Provides a complete testing solution that includes both Surefire and Failsafe configurations along with JaCoCo coverage reporting.
- Features
-
-
Combines multiple testing tiles for complete coverage
-
Provides both unit and integration test execution
-
Includes comprehensive code coverage reporting
-
Enforces NGSS testing standards
-
JaCoCo Coverage Tiles
The JaCoCo tiles provide a modular approach to code coverage configuration, allowing projects to include only the coverage types they need.
jacoco-base-tile
Foundation tile for JaCoCo configuration that other JaCoCo tiles extend.
- Features
-
-
Common JaCoCo plugin configuration
-
Coverage threshold properties (
jacoco.coverage.line.threshold,jacoco.coverage.branch.threshold) -
Coverage check execution
-
Base rules for line and branch coverage enforcement
-
- Usage
-
Not used directly - inherited by other JaCoCo tiles.
jacoco-unit-tests-tile (deprecated)
Extends jacoco-base-tile with unit test specific coverage configuration.
- Features
-
-
Pre-unit-test agent preparation
-
Unit test coverage data collection to
jacoco-ut.exec -
Post-unit-test report generation to
jacoco-utdirectory -
Integration with Surefire plugin via
surefireArgLineproperty
-
jacoco-integration-tests-tile
Extends jacoco-base-tile with integration test specific coverage configuration.
- Features
-
-
Pre-integration-test agent preparation
-
Integration test coverage data collection to
jacoco-it.exec -
Post-integration-test report generation to
jacoco-itdirectory -
Integration with Failsafe plugin via
failsafeArgLineproperty
-
jacoco-aggregate-tests-tile
Combines unit and integration test coverage into a single aggregate report.
- Features
-
-
Depends on both unit and integration test tiles
-
Merges coverage data from both test types
-
Generates combined coverage report
-
Provides comprehensive coverage metrics
-
jacoco-aggregate-tile
Provides aggregate coverage reporting across multiple modules in a multi-module project.
- Purpose
-
Generates project-wide coverage reports that combine coverage data from all modules.
- Usage
-
Typically used in the root module of multi-module Maven projects.
jacoco-kubernetes-tile
Specialized JaCoCo configuration for collecting coverage data from services running in Kubernetes during integration testing.
- Features
-
-
Remote JaCoCo agent configuration
-
Coverage data collection from containerized applications
-
Integration with Kubernetes-based testing workflows
-
Support for distributed coverage collection
-