Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Karva

PyPI - Version Discord

A Python test framework, written in Rust.

Benchmark results

We'd love for you to try Karva! It's currently in alpha, and your feedback helps shape the project. Get started or join us on Discord.

About Karva

Karva aims to be an efficient alternative to pytest and unittest.

Karva is intentionally narrower in scope than pytest. Not every pytest feature encourages high quality tests, and we'd rather omit features than ship ones that quietly make test suites worse. Karva draws on the Rust testing ecosystem, where projects like uv and ruff show what a high quality test suite can look like. By keeping the surface area small, we hope to nudge Python testing in the same direction.

nextest is the clearest example of what we're aiming for, and meeting the bar it sets is an explicit goal of this project.

Getting started

Installation

Karva is available as karva on PyPI.

Install karva with uv:

# Add karva to your project.
uv add --dev karva

You can also install karva with pip, but we strongly recommend using uv instead.

Usage

By default, Karva will respect your .gitignore files when discovering tests in specified directories.

To run your tests, try any of the following:

# Run all tests.
uv run karva test

# Run tests in a specific directory.
uv run karva test tests/

# Run tests in a specific file.
uv run karva test tests/test_example.py

Contributing

Contributions are very welcome! See CONTRIBUTING.md for more information.

Support

Use GitHub issues for bug reports and feature requests, or join the Discord for discussion.

Please report security issues privately; see SECURITY.md.

License

Karva is licensed under the MIT License.

Download files

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

Source Distribution

karva-0.0.1a9.tar.gz (361.3 kB view details)

Uploaded Source

Built Distributions

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

karva-0.0.1a9-cp310-abi3-win_amd64.whl (5.4 MB view details)

Uploaded CPython 3.10+Windows x86-64

karva-0.0.1a9-cp310-abi3-win32.whl (4.8 MB view details)

Uploaded CPython 3.10+Windows x86

karva-0.0.1a9-cp310-abi3-musllinux_1_2_x86_64.whl (5.8 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

karva-0.0.1a9-cp310-abi3-musllinux_1_2_i686.whl (6.0 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ i686

karva-0.0.1a9-cp310-abi3-musllinux_1_2_armv7l.whl (5.4 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARMv7l

karva-0.0.1a9-cp310-abi3-musllinux_1_2_aarch64.whl (5.5 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

karva-0.0.1a9-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.6 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

karva-0.0.1a9-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (6.0 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ i686

karva-0.0.1a9-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (5.0 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARMv7l

karva-0.0.1a9-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.2 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

karva-0.0.1a9-cp310-abi3-macosx_11_0_arm64.whl (5.1 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

karva-0.0.1a9-cp310-abi3-macosx_10_12_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file karva-0.0.1a9.tar.gz.

File metadata

  • Download URL: karva-0.0.1a9.tar.gz
  • Upload date:
  • Size: 361.3 kB
  • Tags: Source
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9.tar.gz
Algorithm Hash digest
SHA256 94739a1465cac071c222bb91644079957200da8fa0b277ba22b4a495f51daf44
MD5 6bab0ddb8a7a2854e9202916fb2698d9
BLAKE2b-256 d397572a3aef470b31b82b9555edf6bb40562d14424ce823202b50a441f3ecd5

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 2297fde58ae677ddc00241b8aaf05673afecb77429728a6f135f28f3f0d00c88
MD5 f6f7b394506ec98ed79680ddcb8f6370
BLAKE2b-256 76c69fe597dc89ada87b701bed3836e75bdb7201895c867a419670bcb0fb11d3

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-win32.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-win32.whl
  • Upload date:
  • Size: 4.8 MB
  • Tags: CPython 3.10+, Windows x86
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 bf612deecf2affe33a76c73fd8224815ae5ce99030598fc32843184012bd5ee3
MD5 95e4aab7f92e3bae887b281a571a2451
BLAKE2b-256 e403b20430df8cbfc32c399c6f01ea2ceac139309ed744dee1df670c0b1555d4

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 5.8 MB
  • Tags: CPython 3.10+, musllinux: musl 1.2+ x86-64
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 be285f8c536ad67330e48aef283e5211de80c07d541a33cd9120194f79b4e9c0
MD5 3c43e0a7d25158961d88639bec1ffad9
BLAKE2b-256 262e599a3d2aa84a690426f4cb6b86b3995544cdd40940ec12b6d8986234d5e3

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-musllinux_1_2_i686.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 3.10+, musllinux: musl 1.2+ i686
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 e4dc13fffbbe0d2e41a51fe674c3e20900484b306681209a22298c0e5edd1fe7
MD5 d47dba073debf8f2bae8636f17b144e6
BLAKE2b-256 333caba238ea496789c93c2aab4bb646904a7a539ec39e458bf7ccc1bd1369b7

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.10+, musllinux: musl 1.2+ ARMv7l
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 92f19e234d78c52a2e6b28433e67b1dbe9b9ae435b78344bdd4fdaf3e8d0c9e4
MD5 a843ce1dc02fcb455a9955bc6c3a3e19
BLAKE2b-256 573c9f7087c41efc7d4c9bb0540d37f8b59879b2fbabc2683d7c10d264a77006

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 5.5 MB
  • Tags: CPython 3.10+, musllinux: musl 1.2+ ARM64
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 fa079e1e84bb5a08cfd659dd97c022a3c2b96c80b7dc090be8ff5dba18b9c9c4
MD5 4679ab2a35fde580825bd935e1245f8c
BLAKE2b-256 0b157d5cf23590e384b464b9e40cf17a32ae994009e8dfb9ab1107f2c3d71965

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 5.6 MB
  • Tags: CPython 3.10+, manylinux: glibc 2.17+ x86-64
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 63088cad90739e1f4ce167fa179dc0c3c619c991aaeb0ce26ecf729014624734
MD5 d252c5e934cf21c6177e98f06bc184b7
BLAKE2b-256 835d4a8fcc69f19b89743f9557740e1f6168a3292f2d39900e26831ad316c582

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 3.10+, manylinux: glibc 2.17+ i686
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 5373266248ca014a11d97dbdc252633bf8d4d2bd5b1f2bb17135f0134c186549
MD5 de3f04d08f609812479f22a194b8ec07
BLAKE2b-256 dfb8a54a96c3ac643dac4d8e7de1d60811be79f8f71366c7ef4900ec2cbe2de9

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.10+, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 88ae0c31d2d0ff41907ccfd792fee0c106904796cf3b99a2e58cbe7e582f578e
MD5 c8d5d6b3574df590d236215074dc9773
BLAKE2b-256 549bc6eaabae9a80e8f9fbe56bc5a42b0dac133df23b4b8e6fe7d7fbefbfe720

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.10+, manylinux: glibc 2.17+ ARM64
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 dd8c43558c689a612486b38c58479eac6834b6e861fcb7a510bf656418aa2699
MD5 f3b16fb00ca3925e7a2814e4279af977
BLAKE2b-256 2533ceaeb50a7e43598e14400bcb5bd22524c4471d0ec4bfd86df7536909968f

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.10+, macOS 11.0+ ARM64
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2a845993f5bd16ccc9c579794db6219c8af6e5a2445aa9416d599786fbaf9a49
MD5 1317059a65b6cc4cd95ea5671907c412
BLAKE2b-256 57d6773ac959b9214b711ccb5792cfd5f91e28559c9cc0f9550af6379291ee00

See more details on using hashes here.

File details

Details for the file karva-0.0.1a9-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: karva-0.0.1a9-cp310-abi3-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.10+, macOS 10.12+ x86-64
  • Uploaded using 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}

File hashes

Hashes for karva-0.0.1a9-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f13e558ce6a820d22d829d80ec7732cb56297b70f425522d11fe29e68744f2e0
MD5 e16037be1d5f14cdfb9d1ae4beb02046
BLAKE2b-256 02c0aa7e49c18b4cf650d9bf2479977a8ca4b35dc8afee5aef0638c5d09cdb2e

See more details on using hashes here.

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