Skip to main content

Testla

Git-native test case management for modern development workflows.

What is Testla?

Testla stores test cases as Markdown files in your repository, making them:

  • Version controlled - Cases branch, merge, and have history like code
  • PR reviewable - Test case changes appear alongside code changes
  • CI-native - No external service required to access test definitions

Quick Start

# Install
pip install testla

# Initialize in your repo
testla init --name "My Project"

# Create a test case
testla case new auth/login --title "User can login"

# List cases
testla case list

Test Case Format

Cases live in testla/cases/ as Markdown with YAML frontmatter:

---
id: TC001
title: User can login with valid credentials
priority: high
tags: [auth, smoke]
automation:
  status: automated
  test_path: tests/test_auth.py::test_valid_login
---

## Preconditions

- User account exists

## Steps

1. Navigate to login page
2. Enter valid credentials

## Expected Result

User sees dashboard

pytest Integration

Link automated tests to cases using the @pytest.mark.testla marker:

import pytest

@pytest.mark.testla("TC001")
def test_user_can_login():
    ...

Run tests and see the Testla report:

pytest -m testla -v

Configuration

Add to your pyproject.toml:

[tool.testla]
project_name = "My Project"
case_id_prefix = "TC"
case_id_digits = 3

Development

# Clone and install
git clone https://github.com/m1yag1/testla.git
cd testla
uv sync --group dev

# Run tests
uv run pytest tests/ -v

# Format and lint
uv run ruff format .
uv run ruff check .

License

Apache-2.0

Metadata

Release files for testla 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for testla 0.1.1
File Size Uploaded Provenance
testla-0.1.1.tar.gz 98.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for testla 0.1.1
File Interpreter ABI Platform
testla-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 130.2 kB

Release files / testla-0.1.1.tar.gz

Download URL testla-0.1.1.tar.gz
Size 98.6 kB
Tags Source
SHA-256 checksum
How to use checksums
8f295d9a09615ec908dc93c65af98c93f94a72e84a808ec92f7fac8d085bcadc
BLAKE2b-256 checksum
How to use checksums
013b6211ef2db49fc2ec4b7454fd3ec04d2cecca8cd572a6c71cf05c8bee30aa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / testla-0.1.1-py3-none-any.whl

Download URL testla-0.1.1-py3-none-any.whl
Size 31.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c2c5adb11fd3f4461e2c1157342061b2586431a2e0467bcbadcdeb75a8a21e88
BLAKE2b-256 checksum
How to use checksums
f6223f03405c15d779358053b0655b34884a56201fa663070ddda6ec82081a4c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for testla 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page