# Tenzir Test v1.4.0

This release introduces a standalone fixture mode for starting fixtures without running tests, adds a built-in docker-compose fixture with structured options, and provides shared container runtime helpers for writing custom fixtures.

## 🚀 Features

### Shared container runtime helpers for fixtures

Feb 15, 2026 · [@mavam](https://github.com/mavam), [@codex](https://github.com/codex) · [#22](https://github.com/tenzir/test/pull/22)

Writing container-based fixtures no longer requires duplicating boilerplate for runtime detection, process management, and readiness polling.

The new `container_runtime` module provides reusable building blocks that handle the common plumbing: detecting whether Docker or Podman is available, launching containers in detached mode, polling for service readiness, and tearing down cleanly. Custom fixtures can import these helpers and focus on their service-specific logic instead.

The built-in `docker-compose` fixture and the example project now use these shared helpers internally.

### Native docker-compose fixture with structured options

Feb 14, 2026 · [@mavam](https://github.com/mavam) · [#21](https://github.com/tenzir/test/pull/21)

Adds a built-in `docker-compose` fixture that starts and tears down Docker Compose services from structured fixture options.

The fixture validates Docker Compose availability, waits for service readiness (health-check first, running-state fallback), and exports deterministic service environment variables (including host-published ports).

### Standalone fixture mode with —fixture CLI option

Feb 14, 2026 · [@mavam](https://github.com/mavam), [@claude](https://github.com/claude) · [#20](https://github.com/tenzir/test/pull/20)

You can now start fixtures in foreground mode without running any tests by using the `--fixture` option. This lets you provision services (like a database or message broker) and use them in your workflow.

Specify fixture names or YAML-style configuration:

```sh
uvx tenzir-test --fixture mysql
uvx tenzir-test --fixture 'kafka: {port: 9092}' --debug
```

The harness prints fixture-provided environment variables like `HOST`, `PORT`, and `DATABASE`, then keeps services running until you press `Ctrl+C`. You can repeat `--fixture` to activate multiple fixtures. The option is mutually exclusive with positional TEST arguments.

[ Download on GitHub ](https://github.com/tenzir/test/releases/tag/v1.4.0)

[Get the release artifacts and source code.](https://github.com/tenzir/test/releases/tag/v1.4.0)