The following sections will describe the code structure, to be able to find easily the location of the code to be added or modified.
The tests to be executed for the code modules are:
-
Unit & Mutation Tests:
-
Unit tests are used to test the classes and methods of the
codemodules. -
Mutation tests are used to verify that the unit tests are effective.
-
-
Integration tests:
-
Integration tests are used to test the
codemodules together with external dependencies. -
These tests are supported by a set of
docker containerslocated incode/src/test/resources/compose
-
| Unit, mutation and integration tests are required as status checks in the CI/CD pipeline pull request approval process. The level of coverage for each type of test must reach at least the defined threshold. |
Karate tests are defined in the e2e/karate folder and are executed in the karatetools-oss-karate-test module.
|
| test | command | report | verification |
|---|---|---|---|
unit |
|
|
all tests pass and the code coverage generated by unit tests is at least 90% |
mutation |
|
|
all tests pass and the mutation coverage is at least 90% |
integration |
|
|
all tests pass and the code coverage generated by integration tests is at least 80% |
| test | command | report | verification |
|---|---|---|---|
unit |
|
workflow execution reports |
automatically on workflow execution |
mutation |
|
workflow execution reports |
automatically on workflow execution |
integration |
|
workflow execution reports |
automatically on workflow execution |
compatibility |
|
workflow execution reports |
automatically on workflow execution |