e2e/

directory
v1.104.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 29, 2023 License: Apache-2.0

README

E2E Tests

E2E tests are run in build-test workflow on pull_request event.

e2e_test.go uses Ginkgo to build a test suite from inventory.go and runs each test using testim/client.go.

Tests are parallelized using Gingko's test focus. Each workflow definition in .github/workflows/build-test.yaml must define a test-focus parameter that matches the Test Name property defined in inventory.go. Each e2e test workflow skips all tests but what is defined in test-focus.

Development environment

To install dependencies run:

make kots
make -C e2e deps
npm install -g @testim/testim-cli

Set the testim access token:

export TESTIM_ACCESS_TOKEN=<my-testim-access-token>

The entire suite can be run with the command:

make e2e

To run an individual test run:

make e2e \
    FOCUS="Change License"

To build and run with ttl.sh images run:

make all-ttl.sh
make e2e \
    KOTSADM_IMAGE_REGISTRY=ttl.sh \
    KOTSADM_IMAGE_NAMESPACE=$USER \
    KOTSADM_IMAGE_TAG=24h

To run a helm-managed mode test:

Note the admin console helm chart is maintained in a separate repo

make e2e \
    FOCUS="Helm Managed"
    KOTS_HELM_CHART_URL=oci://ttl.sh/$USER/admin-console
    KOTS_HELM_CHART_VERSION=$VERSION

To run using a specific testim branch:

make e2e \
    TESTIM_BRANCH=$BRANCH_NAME

To run against the okteto dev environment run:

Note when using an existing cluster you must focus the suite on a single test

okteto context use https://replicated.okteto.dev
make e2e \
    FOCUS="Change License" \
    EXISTING_KUBECONFIG=${KUBECONFIG:-$HOME/.kube/config}

To skip cluster teardown in order to debug issues:

Note the namespace may be specific to the test

$ make e2e \
    FOCUS="Change License" \
    SKIP_TEARDOWN=1
...
    To set kubecontext run:
      export KUBECONFIG="$(k3d kubeconfig merge kots-e2e3629427925)"
    To delete cluster run:
      k3d cluster delete kots-e2e3629427925
$ export KUBECONFIG="$(k3d kubeconfig merge kots-e2e3629427925)"
$ kubectl -n smoke-test port-forward svc/kotsadm 3000 --address=0.0.0.0
Forwarding from 0.0.0.0:3000 -> 3000
Requirements

Currently, the admin console helm chart will not install on an M1 Macbook because of it's node affinity rules

  1. Docker

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL