API Gateway Component Tests
Api-gateway component tests use the cucumber/godog library.
Prerequisites
- Kubernetes cluster provisioned and KUBECONFIG set to point to it
- Kyma installed
- OIDC issuer for JWT with claims
- scopewith values- readand- write
- audwith values- https://example.comand- https://example.com/user
 
Environment Variables
These environment variables determine how the tests are run on both Prow and your local machine:
- EXPORT_RESULT- set this environment variable to- trueif you want to export test results to JUnit XML, Cucumber JSON, and HTML report. The default value is- false.
Customize env_vars.sh if necessary.
To run these tests on your cluster you have to set those environment variables:
export KYMA_DOMAIN=<YOUR_KYMA_DOMAIN>
export CLIENT_ID="<YOUR_CLIENT_ID>"
export CLIENT_SECRET="<YOUR_CLIENT_SECRET>"
export OIDC_CONFIG_URL="<YOUR_OIDC_WELL_KNOWN_URL>"
Usage for Standard API Gateway Test Suite
To start the test suite, run:
make test-integration
CI/CD Integration Tests
For more information, see CI/CD documentation.
Usage for Custom Domain Test Suite
Set the Custom Domain Environment Variables
If you are using Gardener, make sure that your Kubernetes cluster has the shoot-cert-service and shoot-dns-service extensions enabled. The desired shoot specification is mentioned in the description of this issue.
Obtain a service account access key with permissions to maintain custom domain DNS entries and export it as a JSON file. To learn how to do it, follow this guide.
Set the following environment variables:
- TEST_DOMAIN- your default Kyma domain, for example,- c1f643b.stage.kyma.ondemand.com
- TEST_CUSTOM_DOMAIN- your custom domain, for example,- custom.domain.build.kyma-project.io
- TEST_SA_ACCESS_KEY_PATH- the path to the service account access key exported as a JSON file, for example,- /Users/user/gcp/service-account.json
Run the Tests
To start the test suite, run:
make test-custom-domain