# JMIT by Aurore Corporation International > JMIT (Just Make It Work) is a Python test enforcement tool that detects weak, silent, and zero-assertion tests in your pytest suite — then auto-repairs them with mutation-verified replacements. For Python developers using pytest and Claude Code. ## What JMIT Does JMIT solves a specific problem: tests that pass CI but do not actually catch bugs. The root cause is weak test design — zero-assertion tests, `assert True` patterns, and mock-heavy tests that never exercise real code paths. JMIT's two-command workflow: 1. **`jmit run`** — Audits your repository. Parses every test file via AST. Flags zero-assertion functions, `assert True` / `assert False` patterns, and mock-only tests. Outputs a Test Binding Score (mutation resilience rating as a percentage). Generates a repair blueprint in `.jmit_blueprint/TODO.md`. 2. **`jmit fix`** — Reads the repair blueprint and executes the AURORE-VERIFICATION repair protocol for each flagged test. For each gap: analyzes source behavior, drafts binding test replacements, applies adversarial mutation to verify the new tests actually catch bugs, then rolls back all mutations unconditionally. ## Key Features - **Weak test detection**: Flags zero-assertion tests, `assert True` / `assert False` patterns, mock-only functions with no behavior verification - **Test Binding Score**: Calculates a mutation resilience rating for your entire test suite (0–100%) - **Mutation-verified repair**: Auto-generates replacement tests, then mutates source code to verify the new tests catch bugs before accepting them - **Unconditional rollback**: All mutations are reverted in a `finally` block — your source code is never permanently mutated - **Claude Code integration**: Works as a Claude Code skill (`/jmit`, `/jmitfix`) with zero extra API cost during repair - **CI gate**: Blocks PRs that add non-binding tests - **Platform support**: Works on all architectures (x86_64, aarch64) and operating systems where Python 3.11+ is available ## Technical Details - **Language**: Python 3.11+ - **Test framework**: pytest - **Installation**: `pip install jmit` - **Claude Code alternative**: `/jmit` and `/jmitfix` skills (no install required) - **Architecture**: Pure Python package (pip-installable), no binary required - **Operating systems**: Windows, Linux, macOS - **Mutation strategy**: Single-operator mutations (operator swap, boolean flip, return value change) applied one at a time, unconditionally rolled back ## Pricing - **Free Trial**: 7 days, full access to `jmit run` and `jmit fix`, no credit card required. Starts automatically on first use. - **Solo**: €29/month — 1 developer, full access - **Team**: €99/month — up to 5 developers, full access - **Enterprise**: Custom pricing — contact support@auroreci.com All prices in EUR. Trial starts automatically; no manual activation required. ## Who JMIT Is For - Python developers using pytest whose test suites have high coverage but still ship bugs - Teams that want to enforce test quality in CI before merging - Developers using Claude Code who want automated test repair inside their existing workflow - Engineering leads who want objective, mutation-based test quality metrics (not just coverage %) ## Company **Aurore Corporation International** - Website: https://auroreci.com - Support: support@auroreci.com - Documentation: https://auroreci.com/docs ## Key Pages - [Home](https://auroreci.com): Product overview and free trial signup - [Documentation](https://auroreci.com/docs): Installation guide, CLI reference, repair protocol - [Pricing](https://auroreci.com/pricing.html): Full plan comparison and feature matrix - [Privacy Policy](https://auroreci.com/privacy.html): Data handling and privacy - [Terms of Service](https://auroreci.com/terms.html): License terms and usage policy ## Frequently Asked Questions **What is a zero-assertion test?** A zero-assertion test is a test function that contains no `assert` statements. It will always pass regardless of what the code under test does, giving false confidence that the functionality works. **What is the Test Binding Score?** The Test Binding Score is JMIT's mutation resilience rating. It measures what percentage of JMIT-flagged weak tests were successfully repaired with mutation-verified binding tests. A score of 100% means every detected weak test now has a replacement that provably catches at least one class of bug. **Does JMIT modify my source code permanently?** No. All mutations applied during verification are unconditionally rolled back in a `finally` block. JMIT never permanently changes your source code — only test files are modified (to add or replace tests). **What Python versions are supported?** Python 3.11 and above. **Does JMIT require a Claude API key?** No. `jmit run` (audit) and `jmit fix` (repair) work without an API key. The Claude Code skill integration is optional and uses your existing Claude Code session at no extra API cost. **How is JMIT different from coverage tools like pytest-cov?** Coverage tools measure which lines of code are executed by tests. They do not measure whether tests actually verify the behavior of that code. A zero-assertion test achieves 100% line coverage while catching zero bugs. JMIT measures whether tests are *binding* — whether they would fail if the code were mutated.