Skip to main content

ESS Community Integration Tests

Overview

The ESS Community Integration Tests project is designed to facilitate the testing of components against Element Server Suite. It provides a command-line interface (CLI) to run ESS integration tests.

Features

  • Set up a Kubernetes cluster for testing.
  • Run integration tests for ESS using predefined test suites.
  • Customize test runs with additional values files.

Prerequisites

  • Python 3.11 or higher
  • Docker
  • k3d
  • Helm
  • Optional: uv to install from git

The browser based tests drive a Chromium running in a docker container, so no browser needs to be installed locally. They need the optional Playwright controller:

  • On glibc hosts, install it with the browser extra, e.g. pipx install ess-community-integration-tests[browser].
  • On musl hosts (e.g. Alpine Linux), Playwright publishes no packages: install it with scripts/setup_playwright_controller.sh instead.

Without it, the browser tests are skipped.

Installation

pipx install ess-community-integration-tests
uvx ess-community-integration-tests

To also run the browser based tests, install the browser extra:

pipx install ess-community-integration-tests[browser]
uvx --from 'ess-community-integration-tests[browser]' pytest-ess

You can also install it from the git repository :

# You can also use any ESS Community version
VERSION=main
uv tool install git+https://github.com/element-hq/ess-helm.git@$VERSION#subdirectory=tests

Example:

VERSION=main
uv tool install git+https://github.com/element-hq/ess-helm.git@$VERSION#subdirectory=tests
    Updated https://github.com/element-hq/ess-helm.git (d6d33a7f7051a0b6bbdcc609a059ae328feee269)
      Built ess-community-integration-tests @ git+https://github.com/element-hq/ess-helm.git@d6d33a7f7051a0b6bbdcc609a059ae328feee269#subdirectory=tests
...
Installed 3 executables: collect-ess-logs, pytest-ess, setup-ess-cluster

Usage

Setting Up a Cluster

To set up a Kubernetes cluster for testing, use the setup-ess-cluster command:

setup-ess-cluster

Running Tests

To run tests, use the run-tests command:

pytest-ess --test-suite <test-suite-name> [options]

Options

  • --test-suite: Name of the test suite to run. Available test suites are defined in the env directory as .rc files.
  • --pull-chart: Pull the Helm chart for testing.
  • --chart-version: Specify the chart version to pull. If not provided, the version is inferred from the package version.
  • --keep: Keep the Kubernetes cluster after tests complete.
  • --additional-test-values-file: Path to an additional values file for custom test configurations.

Test Suites

Test suites are defined in the env directory as .rc files. Each file corresponds to a different test environment configuration.

Metadata

Release files for ess-community-integration-tests 26.10.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ess-community-integration-tests 26.10.0
File Size Uploaded
ess_community_integration_tests-26.10.0.tar.gz 44.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ess-community-integration-tests 26.10.0
File Interpreter ABI Platform
ess_community_integration_tests-26.10.0-py3-none-any.whl Python 3 none any Details

Total release size: 111.2 kB

Release files / ess_community_integration_tests-26.10.0.tar.gz

Download URL ess_community_integration_tests-26.10.0.tar.gz
Size 44.1 kB
Tags Source
SHA-256 checksum
How to use checksums
331614fe8c9e92ea74d91a91ec78f535430fe81aaac5419964fe64480ac3ec83
BLAKE2b-256 checksum
How to use checksums
0bd6712eba3cdc13ca7bbb6e29a54204ec1d990765a86cf9815258692b2864cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ess_community_integration_tests-26.10.0-py3-none-any.whl

Download URL ess_community_integration_tests-26.10.0-py3-none-any.whl
Size 67.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
08ca654ff6823fe8da2edb3b2bc293889abf402b02b44d717579d60996edc75d
BLAKE2b-256 checksum
How to use checksums
c8fe043b34cb66c43a46c5f238588c8e9bd345c8ad98dd459ae4414865eec08c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.24 {"installer":{"name":"uv","version":"0.12.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

26.10.0 This release

2 release files

26.9.4

2 release files

26.9.3

2 release files

26.9.2

2 release files

26.8.1

2 release files

26.7.2

2 release files

26.7.1

2 release files

26.7.0

2 release files

26.6.2

2 release files

26.5.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page