Skip to main content

IssueTest framework — reusable functional test scaffolding and pytest plugin

Project description

IssueTest

IssueTest is a repo-agnostic functional test framework that treats GitHub Issues as the test specification, syncs them into YAML case files, scaffolds test stubs, runs those tests with pytest, and prepares status comments back to the originating issues.

What works now

  • issuetest init bootstraps a consumer repository with config, templates, workflows, and labels.
  • issuetest matrix builds an automation matrix from case YAMLs and discovered tests.
  • issuetest scaffold <case_id> creates discoverable pytest stubs with embedded case_id metadata.
  • issuetest run executes pytest and writes .issuetest/run_report.json.
  • issuetest report --dry-run renders the exact comment bodies that would be posted to GitHub issues.
  • The reusable composite Actions for sync, validate, run, and report exist under action/*.

Install

Until the package is published to PyPI, install from the local package directory or a built wheel.

python -m pip install ./tools/issuetest

Or build and install the wheel:

python -m build tools/issuetest -o tools/issuetest/dist
python -m pip install --no-deps tools/issuetest/dist/issuetest-1.0.0rc1-py3-none-any.whl

After PyPI publication, the intended install is:

python -m pip install issuetest

Commands

issuetest init
issuetest sync --dry-run
issuetest validate
issuetest matrix
issuetest scaffold SUB-PLAN-001
issuetest run
issuetest report --dry-run
issuetest doctor

Docs

  • docs/quickstart.md for setup.
  • docs/ci-recipes.md for reusable GitHub Actions.
  • docs/commercex-subscriptions.md for the worked CommerceX subscriptions example.
  • docs/threat_model.md for the security and trust model.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

issuetest-1.0.0rc2.tar.gz (644.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

issuetest-1.0.0rc2-py3-none-any.whl (32.9 kB view details)

Uploaded Python 3

File details

Details for the file issuetest-1.0.0rc2.tar.gz.

File metadata

  • Download URL: issuetest-1.0.0rc2.tar.gz
  • Upload date:
  • Size: 644.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for issuetest-1.0.0rc2.tar.gz
Algorithm Hash digest
SHA256 98a90b9f4856d52c200866652549f2f171c95d45dab4d8b270942f0c86f774b0
MD5 b2ed51b55844a8255f71ea0990c53cd0
BLAKE2b-256 237a6db11896368c57effe971386a57c59c434981ed2e146063ff29fb2c964ec

See more details on using hashes here.

File details

Details for the file issuetest-1.0.0rc2-py3-none-any.whl.

File metadata

  • Download URL: issuetest-1.0.0rc2-py3-none-any.whl
  • Upload date:
  • Size: 32.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for issuetest-1.0.0rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 bac8a8a39b97761e8e4bc3b449600465580918cd27c2b7d412b6c737641ea2af
MD5 81919ad30ce388e4f86c55f9f0c46a30
BLAKE2b-256 54c580bfb7d2e7eb471f187ce64854ff2124d0f362c21a8bd058271ba2094106

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page