threepio-test-runner


Namethreepio-test-runner JSON
Version 0.1.0 PyPI version JSON
download
home_pagehttps://github.com/zk/3pio
SummaryContext-optimized test runner for coding agents
upload_time2025-09-11 04:46:22
maintainerNone
docs_urlNone
authorZachary Kim
requires_python>=3.8
licenseMIT
keywords test testing pytest ai adapter reporter
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 3pio

A context-friendly test runner for Python projects. 3pio enhances your existing test workflow by generating structured, AI-optimized reports without changing how your tests run.

## Installation

```bash
pip install threepio-test-runner
```

## Usage

```bash
# Run pytest tests
3pio pytest

# Run specific test file
3pio pytest tests/test_utils.py

# Run with pytest options
3pio pytest -v -s tests/

# Run unittest tests
3pio python -m unittest

# Run with coverage
3pio pytest --cov=myproject tests/
```

## Why 3pio?

When working with AI coding assistants, test output often gets lost or truncated. 3pio solves this by:

- **Preserving all test output** - Never lose print statements or error traces
- **Structured reports** - Each test file gets its own organized log
- **AI-friendly format** - Reports optimized for LLM context windows
- **Zero config** - Works with your existing pytest/unittest setup
- **Non-intrusive** - Your tests run exactly as before, 3pio just captures better reports

## Supported Test Frameworks

- **pytest** - Full support for pytest and its plugins
- **unittest** - Python's built-in testing framework
- **nose2** - Works with nose2 test runner
- **Any Python test runner** - Captures output from any test command

## How It Works

3pio acts as a transparent wrapper around your test runner:

1. Runs your tests with a custom plugin to capture structured data
2. Preserves all console output and test results
3. Generates organized reports in `.3pio/runs/[timestamp]-[name]/`
4. Maintains full compatibility with your existing test configuration

## Report Structure

After running tests, find your reports in:
```
.3pio/runs/
└── 20240110-143022-clever-penguin/
    ├── test-run.md              # Summary report
    ├── output.log               # Complete console output
    └── logs/
        ├── test_utils.py.log    # Per-file test results
        └── test_api.py.log      # Organized by test file
```

## Repository

For source code, issues, and documentation: https://github.com/zk/3pio

## License

MIT

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/zk/3pio",
    "name": "threepio-test-runner",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "test testing pytest ai adapter reporter",
    "author": "Zachary Kim",
    "author_email": "zachary@example.com",
    "download_url": "https://files.pythonhosted.org/packages/94/d3/b77ace72576f5034c86c1fb16dbdedb9d298788b8f58820ab7d82b4d595f/threepio_test_runner-0.1.0.tar.gz",
    "platform": null,
    "description": "# 3pio\n\nA context-friendly test runner for Python projects. 3pio enhances your existing test workflow by generating structured, AI-optimized reports without changing how your tests run.\n\n## Installation\n\n```bash\npip install threepio-test-runner\n```\n\n## Usage\n\n```bash\n# Run pytest tests\n3pio pytest\n\n# Run specific test file\n3pio pytest tests/test_utils.py\n\n# Run with pytest options\n3pio pytest -v -s tests/\n\n# Run unittest tests\n3pio python -m unittest\n\n# Run with coverage\n3pio pytest --cov=myproject tests/\n```\n\n## Why 3pio?\n\nWhen working with AI coding assistants, test output often gets lost or truncated. 3pio solves this by:\n\n- **Preserving all test output** - Never lose print statements or error traces\n- **Structured reports** - Each test file gets its own organized log\n- **AI-friendly format** - Reports optimized for LLM context windows\n- **Zero config** - Works with your existing pytest/unittest setup\n- **Non-intrusive** - Your tests run exactly as before, 3pio just captures better reports\n\n## Supported Test Frameworks\n\n- **pytest** - Full support for pytest and its plugins\n- **unittest** - Python's built-in testing framework\n- **nose2** - Works with nose2 test runner\n- **Any Python test runner** - Captures output from any test command\n\n## How It Works\n\n3pio acts as a transparent wrapper around your test runner:\n\n1. Runs your tests with a custom plugin to capture structured data\n2. Preserves all console output and test results\n3. Generates organized reports in `.3pio/runs/[timestamp]-[name]/`\n4. Maintains full compatibility with your existing test configuration\n\n## Report Structure\n\nAfter running tests, find your reports in:\n```\n.3pio/runs/\n\u2514\u2500\u2500 20240110-143022-clever-penguin/\n    \u251c\u2500\u2500 test-run.md              # Summary report\n    \u251c\u2500\u2500 output.log               # Complete console output\n    \u2514\u2500\u2500 logs/\n        \u251c\u2500\u2500 test_utils.py.log    # Per-file test results\n        \u2514\u2500\u2500 test_api.py.log      # Organized by test file\n```\n\n## Repository\n\nFor source code, issues, and documentation: https://github.com/zk/3pio\n\n## License\n\nMIT\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Context-optimized test runner for coding agents",
    "version": "0.1.0",
    "project_urls": {
        "Bug Reports": "https://github.com/zk/3pio/issues",
        "Homepage": "https://github.com/zk/3pio",
        "Source": "https://github.com/zk/3pio"
    },
    "split_keywords": [
        "test",
        "testing",
        "pytest",
        "ai",
        "adapter",
        "reporter"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "63b9bc9d6af7aa9e47eef23caccc8a6a2f59aba34dca0e08463655c23b6d9985",
                "md5": "d9bfb5199f1f4e8af7c66a89b832cbf5",
                "sha256": "0135125a4a5bba32fc22df22d391cb1321aee657313cb0ce2a1f80287d73ccfd"
            },
            "downloads": -1,
            "filename": "threepio_test_runner-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d9bfb5199f1f4e8af7c66a89b832cbf5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 10424934,
            "upload_time": "2025-09-11T04:46:19",
            "upload_time_iso_8601": "2025-09-11T04:46:19.856178Z",
            "url": "https://files.pythonhosted.org/packages/63/b9/bc9d6af7aa9e47eef23caccc8a6a2f59aba34dca0e08463655c23b6d9985/threepio_test_runner-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "94d3b77ace72576f5034c86c1fb16dbdedb9d298788b8f58820ab7d82b4d595f",
                "md5": "cf445171f7a9c48b9e5f6d07fc9a6794",
                "sha256": "b82f97428020598d9d94ee3a836d4d988f2524e78a1214790e770d5baa969ea6"
            },
            "downloads": -1,
            "filename": "threepio_test_runner-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "cf445171f7a9c48b9e5f6d07fc9a6794",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 8627127,
            "upload_time": "2025-09-11T04:46:22",
            "upload_time_iso_8601": "2025-09-11T04:46:22.043047Z",
            "url": "https://files.pythonhosted.org/packages/94/d3/b77ace72576f5034c86c1fb16dbdedb9d298788b8f58820ab7d82b4d595f/threepio_test_runner-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-11 04:46:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "zk",
    "github_project": "3pio",
    "github_not_found": true,
    "lcname": "threepio-test-runner"
}
        
Elapsed time: 3.56425s