30 open-source projects similar to testcontainers/testcontainers-java, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Testcontainers Java alternative.
Testcontainers for .NET is a Docker testing library and integration testing framework designed to manage the lifecycle of throwaway containers. It provides high-level abstractions as a Docker API wrapper to provision ephemeral infrastructure, replacing mocks with real database, messaging, and search engine instances to ensure isolated and reproducible test environments. The project distinguishes itself through a builder-configuration-container pattern and a dynamic port binding mechanism that prevents collisions during concurrent test execution. It enables reliable service-to-service communic
testcontainers-go is a Docker integration testing library for Go designed to provision and manage disposable containerized infrastructure. It functions as a container lifecycle manager and ephemeral infrastructure provisioner, allowing developers to programmatically create, start, and destroy containers as dependencies for automated integration tests. The library acts as a Docker network orchestrator by mapping container ports to random host ports and resolving network endpoints for test clients. This capability enables parallel test execution by preventing network collisions and ensures that
This project is a comprehensive reference guide and cheat sheet for the Docker CLI. It provides a structured collection of commands and documentation to help users manage container lifecycles, build images, and handle registries. The documentation specifically covers the orchestration of multi-container applications using Docker Compose and the management of scalable services across multiple nodes via Docker Swarm. It also includes detailed guides for configuring virtual networks, bridges, and ports to control container communication. The reference surface extends to container image administ
Cypress is a browser-based testing framework designed for writing and running automated tests directly inside the browser. It serves as an end-to-end testing framework, a frontend component testing tool, and a web application test runner. The project also functions as a headless browser automation tool and a network traffic interceptor. The system differentiates itself by executing test code within the same browser process as the application, allowing for direct access to the DOM. It includes a network traffic interception system to stub and manipulate browser requests, as well as a graphical
Incus is a unified orchestration platform for managing system containers, OCI application containers, and virtual machines through a single control plane. It brings together cluster infrastructure management, secure multi-tenancy, software-defined networking, and pluggable storage backend orchestration into one cohesive system exposed via a full REST API and command-line interface. What distinguishes Incus is its ability to run multiple instance types side by side—full Linux system containers, OCI application containers, and QEMU virtual machines—all managed with consistent tooling. Networkin
Exegol is an offensive security platform and containerized tooling orchestrator designed to deploy and manage isolated security operations environments. It functions as a workspace manager that provisions pre-configured security images and toolkits within Docker containers to protect host systems from malicious payloads. The platform distinguishes itself by integrating AI security workflow orchestration, allowing AI assistants to discover and trigger security tools through a standardized communication protocol. It further provides remote desktop gateway capabilities, enabling GUI access via X
Molecule is an infrastructure test orchestrator and testing framework designed for Ansible roles and collections. It functions as an ephemeral environment manager that spins up and tears down temporary test hosts to validate infrastructure code in isolation. The project distinguishes itself through a specialized idempotency validator that executes automation sequences multiple times to ensure no unintended changes occur after the initial desired state is reached. It utilizes a driver-based provisioning model to support the creation of test targets across containers, virtual machines, and clou
Dockhand is a multi-host Docker manager and container management interface used to control the lifecycle of containers, images, volumes, and networks. It functions as a Docker Compose orchestrator and GitOps deployment tool, enabling the synchronization of application stacks directly from remote Git repositories. The project distinguishes itself as an enterprise Docker access controller, providing role-based access control and identity verification through OIDC, LDAP, and multi-factor authentication. It secures sensitive data using AES-256-GCM encryption for credentials at rest and handles na
This project is a NestJS testing boilerplate and reference implementation. It provides a structured monorepo workspace designed to demonstrate various architectural and testing patterns for NestJS applications. The project features a dockerized test environment and an integration testing framework. It includes a dedicated GraphQL API test suite to validate graph-based endpoints and schemas for queries and mutations. The suite covers a layered testing hierarchy consisting of unit, integration, and end-to-end tests. These capabilities extend across the application and data layers, including da
This project provides a set of containerized images for running a distributed Selenium Grid to automate browser testing at scale. It enables containerized browser testing by executing automated web tests using ephemeral browser containers and WebDriver browser containers that scale on demand. The system allows for the deployment of a distributed test grid to spread browser workloads across multiple machines. It includes a VNC browser interface that provides a web-based visual interface for inspecting live browser sessions running inside the containers. Capabilities cover browser test debuggi
Earthly is a containerized build system and Docker build framework designed for creating reproducible build pipelines. It ensures environment consistency by executing every build step inside an isolated container, combining the isolation of container images with dependency tracking and parallel execution. The system differentiates itself through a focus on hermeticity and multiplatform support, allowing for the generation of container images targeting multiple CPU architectures within a single execution flow. It maintains a hermetic build environment by isolating network access and utilizing
WebDriverIO is a Node.js test automation framework used for automating functional tests across web browsers and mobile applications. It acts as a WebDriver protocol client that manages remote browser sessions and executes commands against WebDriver and Appium servers to perform end-to-end testing. The framework is distinguished by its ability to control both native and hybrid mobile applications and its support for running automated suites across local machines, remote grids, and cloud device providers. It includes specialized capabilities for coordinating multi-browser interactions and estab
Buildkit is a programmable container build toolkit and OCI container image builder that converts build definitions into concurrent dependency graphs for image construction. It functions as an OCI image distribution engine, capable of generating container images and exporting artifacts to local storage or remote registries. The project is distinguished by its use of a low-level binary intermediate representation to decouple high-level build languages from the execution engine. It supports multi-platform image builds through user-mode architecture emulation and provides a distributed build cach
This project provides containerized distribution templates and images for deploying a media server. It enables the operation of a media server within Docker or Kubernetes environments, utilizing package management charts to streamline installation and management of home cinema libraries. The project focuses on high-performance video processing through hardware accelerated transcoding, which is achieved by passing through graphics processing unit devices to the container. It ensures data persistence by mapping host directories for configuration databases and large-scale media libraries. The s
This project is a containerized orchestration layer for the Elastic Stack, providing a pre-configured set of Docker Compose files to deploy Elasticsearch, Logstash, and Kibana as a unified data analysis stack. It functions as a centralized log management system for ingesting, indexing, and searching log data using a cluster of interconnected services. The deployment pattern includes an Elasticsearch cluster manager that enables scaling data nodes through replica scaling and internal discovery. It provides a web-based administration interface for monitoring cluster health and status. The syst
podman-compose is a command line tool and compose specification wrapper that translates YAML definitions into commands for the Podman container engine. It functions as a multi-container orchestrator that deploys application stacks without requiring a background daemon process. The tool enables rootless container management, allowing the execution of containerized applications and services without administrative privileges on the host. It translates high-level compose commands into individual shell calls to coordinate the deployment of multiple containers. The system manages container network
Vitest is a high-performance testing framework designed for JavaScript and TypeScript applications. It provides an integrated environment that supports unit, integration, and browser-based testing, allowing developers to execute test suites natively without requiring separate build steps or complex configuration. The project distinguishes itself through a highly optimized execution model that leverages worker-thread isolation and on-demand module transformation to provide rapid feedback. It includes a comprehensive suite of mocking and spying utilities that allow for the interception of depen
Dozzle is a web-based dashboard designed for the real-time monitoring and management of Docker container environments. It provides a centralized interface to stream live logs, track resource utilization, and perform administrative tasks across multiple host environments. The platform distinguishes itself by offering an interactive terminal emulator that allows users to execute commands directly within running containers from a browser. It also includes built-in alerting capabilities, enabling users to monitor log streams for specific patterns and receive automated notifications when critical
Karma is a JavaScript test runner designed for executing test suites across multiple real web browsers to ensure cross-browser compatibility. It functions as a browser-based execution system that launches browsers, captures console output, and provides a command line interface for running automated tests within continuous integration pipelines. The project utilizes a plugin architecture that allows for the integration of third-party launchers, reporters, and preprocessors. It employs an adapter-based framework to execute tests from various assertion libraries through a unified runner interfac
Terratest is a Go library and testing framework designed for automating the deployment, validation, and destruction of infrastructure stacks. It serves as a cloud resource verification tool that interacts with provider APIs and executes remote shell commands to ensure infrastructure definitions are correctly configured. The framework provides specialized support for validating Terraform modules and Kubernetes deployments, including the verification of container orchestration manifests and Helm charts. It distinguishes itself through the use of Docker container utilities for script execution a
BackstopJS is an automated screenshot testing framework and visual regression testing tool designed to identify pixel-level discrepancies between different versions of a web application. It functions as a browser automation testing suite that captures visual snapshots of a user interface and compares them against stored reference images to detect unintended changes. The project utilizes a containerized testing environment via Docker to ensure consistent browser rendering and prevent cross-platform visual discrepancies. It includes a web UI diffing interface that allows users to analyze visual
Intern is a JavaScript test framework and runner designed for executing unit and functional tests across different environments. It serves as an end-to-end testing tool and cross-browser testing suite to verify that application behavior remains consistent across multiple desktop and mobile web browsers. The project enables automated browser testing by controlling web drivers and utilizing cloud testing services to simulate user interactions. This allows for the automation of functional tests and cross-platform web testing to identify bugs in a web interface. The system provides capabilities
Buildah is a daemonless container tool used for building and managing OCI-compliant container images. It functions as a command line utility that creates and modifies images without requiring a background process or root privileges. The tool transforms Dockerfile instructions into standard images and allows for the generation of images by committing the state of a running container. It supports the creation of images from scratch or base images, ensuring that all output adheres to Open Container Initiative specifications for portability. Beyond image construction, it provides capabilities fo
Dockge is a web-based management interface for containerized applications that utilizes configuration files as the primary source of truth. It provides a centralized dashboard for orchestrating container stacks, allowing users to create, edit, and control services directly through a graphical interface rather than the command line. The platform distinguishes itself by offering a migration utility that converts manual container execution commands into structured configuration files. It supports the management of distributed infrastructure by connecting to multiple remote hosts from a single in
Dokku is a self-hosted platform as a service that automates the deployment and management of web applications on your own infrastructure. It functions as an infrastructure automation tool, providing a git-driven engine that triggers container builds, service orchestration, and release workflows directly from source code repositories. The platform distinguishes itself by using buildpack-based image construction to detect project structures and automate container creation without manual configuration. It manages the full application lifecycle through a simplified interface that abstracts low-le
QUnit is a JavaScript unit testing framework designed to verify code behavior using assertions and lifecycle hooks across browsers and server runtimes. It functions as a browser-based test runner with an HTML interface for reporting results, an asynchronous test orchestrator for coordinating callbacks, and a utility for isolating and verifying document object model changes. The framework distinguishes itself through specialized DOM testing capabilities, allowing for the isolation and resetting of the document object model between tests to ensure atomicity. It also features a system for detect
axe-core is an automated accessibility testing engine and compliance auditor designed to scan web and mobile interfaces for violations of industry accessibility standards. It functions as a programmatic scanner and linter that analyzes HTML and source code to identify barriers and verify compliance with accessibility guidelines. The project distinguishes itself by combining a DOM-based rule engine with computer vision and machine learning to detect complex violations that evade traditional analysis, such as visual heading discrepancies and informative images. It provides specialized capabilit
Ava is a test runner for JavaScript and TypeScript designed to execute test suites with a focus on concurrency and isolation. It serves as a concurrent test executor that runs test files in parallel across multiple processes to reduce total runtime and prevent state leakage between suites. The project features a built-in snapshot testing framework that saves large data structures to disk and compares subsequent executions to detect regressions via diffs. It is also compatible with the Test Anything Protocol, allowing it to export results for use with external reporting tools. Its capability
This is a command line tool for building and managing isolated development environments based on the Development Container Specification. It functions as an OCI container image builder and a provisioner for instantiating standardized containers within automated continuous integration workflows. The tool includes a system for injecting pre-configured software and toolsets into containers using a registry of reusable installation modules. This allows for the creation of shareable features and the installation of specific languages, CLI tools, and software dependencies. It covers the automation
LXD is a unified platform for managing both system containers and virtual machines through a single REST API and command-line interface. It provides a programmatic HTTP interface for controlling the full lifecycle of instances, enabling automation and integration with external tools. The system runs unprivileged containers with per-instance UID/GID mappings, seccomp filters, and AppArmor profiles for kernel-level isolation, while supporting multiple storage backends including directory, Btrfs, LVM, ZFS, Ceph, LINSTOR, and TrueNAS through a unified driver interface. The platform distinguishes