Our basic set of tests includes:
- Code linting
- Backend unit tests
They are run on every PR by default. Successful basic tests are required in order to merge any PRs. Before starting to test your proposed changes, they are temporarily merged into the target branch of the pull request.
- none
In addition to our basic set of tests we have smoke tests which are running on AWS platform only.
- Add the
run-smoke-tests
GitHub label
-
I am not able to add labels, what should I do?
Please ask one of the repository maintainers to add the labels.
-
How do I retrigger the tests?
comment with
ok to test
on the PR. -
I forgot to add the GitHub labels. Can I add them after creating the PR?
Yes, just add the GitHub labels and comment
ok to test
on the PR. -
What if I trigger the tests twice in a small time frame?
Triggering the tests twice in a small time frame results in two test executions. The result of the most recent execution will be reported as a PR status in GitHub.
-
What can I do in case I run into test flakes continually?
- Make sure the test failure is in no way related to your PR changes. Test your changes locally thoroughly.
- Document the flake in Jira in the
INST
project as issue type "bug" with theflake
label. - Get the approval of another person.
- Merge the PR.
We use Jenkins to run our tests and our nightly
builds against the master branch.
Those jobs are executing smoke tests and building docker images.
To run the smoke tests locally you need to set the following environment variables:
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
LICENSE_PATH
PULL_SECRET_PATH
Optionally you can also set:
DOMAIN
AWS_REGION
Once the environment variables are set, run ./tests/run.sh
.