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.2

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.2
File Size Uploaded
ess_community_integration_tests-26.10.2.tar.gz 49.0 kB Details

Built distribution (wheel)

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

Total release size: 117.7 kB

Release files / ess_community_integration_tests-26.10.2.tar.gz

Download URL ess_community_integration_tests-26.10.2.tar.gz
Size 49.0 kB
Tags Source
SHA-256 checksum
How to use checksums
18092a1834bf13e7202f3f5567a6f556d633038610076818686068c4d474cb29
BLAKE2b-256 checksum
How to use checksums
a638e0bcc40cf4efc3352b0a3efdf082517aa76c21a9920fcc621ee381ea72ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","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.2-py3-none-any.whl

Download URL ess_community_integration_tests-26.10.2-py3-none-any.whl
Size 68.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f5f9b022cceef13fa311dba962dd2c4b2df17b23e42463442b190ba8ec7ff411
BLAKE2b-256 checksum
How to use checksums
56e7b93627da123b0b224e8c01137d7089786dd1647ac4cc7b30cbde38e5a060
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","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.2 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