# orlangure/gnomock

Test your code without writing mocks with ephemeral Docker containers 📦 Setup popular services with just a couple lines of code ⏱️ No bash, no yaml, only code 💻

Repository: https://github.com/orlangure/gnomock
Canonical: https://ross.abutalabs.com/products/gnomock
Language: Go
License: MIT
License Family: permissive
Topics: go, golang, testing, integration-testing, end-to-end-testing, docker, kafka, postgres, mysql, mongo, rabbitmq, splunk, sql-server, redis, memcached, elasticsearch, mariadb, kubernetes, cockroachdb, hacktoberfest
Last push: 2026-04-13T15:37:26+00:00

## Health v2 (maintenance only)
Score: 57/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 77, release rhythm 8, longevity 100
- inputs: {"age_days": 2406, "days_push": 142, "days_rel": 452, "gap_med": null, "n_releases_24m": 1}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1489, forks 80 (observed 2026-08-28T04:04:52.266176+00:00)

## What it is
Gnomock is a Go integration and end-to-end testing toolkit that spins up ephemeral Docker containers for application dependencies with preconfigured initial state, then cleans them up automatically. It offers many official presets (Postgres, MySQL, Redis, Kafka, etc.) and can also run as an HTTP daemon for use from other languages.

## Use cases
- spin up a throwaway postgres with schema for integration tests
- test against real redis instead of mocks
- seed test data into s3 or splunk during e2e tests
- run kafka in docker for consumer tests
- set up ephemeral mysql containers in go tests
- use gnomock daemon from python or node tests

## When to choose
- you want integration tests against real services without writing mocks
- you need easy initial-state setup for databases and message brokers
- your project is in Go or can call an HTTP daemon

## When to avoid
- you need remote or orchestrated Docker hosts (experimental support only)
- your tests don't require real external dependencies
- you can't run a local Docker daemon

## Facets
- artifact type: library
- maturity: active
- function: testing, e2e-testing, container-runtime
- domain: testing, developer-tools, databases
- platform: go, cli
- tags: integration-testing, testcontainers, ephemeral-containers, presets, no-mocks, http-daemon, containers, docker

## Member repositories
- orlangure/gnomock (main) score 57

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:52.266176+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:33:41.612956+00:00, confidence not recorded.
  - readme: https://github.com/orlangure/gnomock (fetched 2026-08-28T04:04:52.266176+00:00, sha 26da3dae119d)
- Data as of 2026-08-30T08:39:29.467469+00:00.
