FREEDOM251

Freedom251 › Software Testing Tools

pytest

Free plan Linux

Visit pytest Alternatives Pricing

pytest's own site

What pytest is

pytest is a free Python testing framework for writing small tests and scaling them to functional testing for applications and libraries. It discovers test modules and functions using standard naming conventions, and its assertion introspection gives detailed information about failing `assert` statements. Fixtures provide test resources, including unique temporary directories, and can be shared or parametrized. Test selection can be narrowed by module, directory, keyword, collection path or marker expression. pytest can run `unittest` test suites, including trial, and supports external plugins; its project home reports more than 1300. It can also be invoked from Python code, and the documentation describes external plugins such as pytest-cov. The project lists Python 3.10+ or PyPy 3 as supported runtimes; pytest 9.0+ requires Python 3.10+. The documented installation command is `pip install -U pytest`. The project directs users to GitHub issues for bugs and feature requests, while suspected security vulnerabilities should be reported through a new GitHub security advisory. Commercial support and maintenance are offered through Tidelift Subscription.

Who it suits

pytest suits Python developers testing applications and libraries, from small tests to more complex functional suites. Organizations using open source dependencies can also consider the listed Tidelift support offer.

What it does well

  • Automatically discovers tests by naming convention.
  • Fixtures can provide unique temporary directories.
  • Runs unittest suites, including trial.
  • Supports external plugins and parametrized cases.
  • Free and open source.

What to know first

  • pytest 9.0+ requires Python 3.10+.
  • The listed platform is Linux.

Plans

PlanBilled and limitsPrice
pytestOpen source Python testing frameworkFree

As pytest.org lists them, read 29 Sept 2026. The maker's own page has the final word.

Getting started

  1. Open the pytest website
  2. Use a Linux environment
  3. Install Python 3.10+ or PyPy 3
  4. Install pytest with pip install -U pytest
  5. Write tests using the standard discovery naming conventions
  6. Select tests by module, directory, keyword, collection path, or marker expression

Verdict

pytest offers test discovery, fixtures, detailed assertion feedback and broad test selection for Python projects. Check the runtime requirements for your chosen version and whether its available features cover your testing needs.

Questions

What does pytest cost?

The pytest plan is free, with a free plan.

Which runtimes does pytest support?

The project lists Python 3.10+ or PyPy 3; pytest 9.0+ requires Python 3.10+.

How do I install pytest?

The getting-started guide uses pip install -U pytest.

Can pytest run unittest tests?

Yes. pytest runs unittest test suites, including trial, out of the box.

Does pytest support plugins?

Yes. Its plugin architecture supports external plugins, and the project home reports more than 1300.

Where are bugs and security issues reported?

Bugs and feature requests go to GitHub issues. Suspected security vulnerabilities should be reported through a new GitHub security advisory.

Facts from pytest's own pages

Assertions
pytest provides detailed information about failing assert statements through assertion introspection. · docs.pytest.org, 29 Sept 2026
Compatibility
pytest can run unittest test suites, including trial, out of the box. · docs.pytest.org, 29 Sept 2026
Enterprise services
The Tidelift subscription description lists security updates, licensing verification and indemnification, maintenance, version guidance, roadmap input, and tooling and cloud integration. · docs.pytest.org, 29 Sept 2026
Fixtures
Fixtures provide resources to tests, including unique temporary directories, and can be shared or parametrized. · docs.pytest.org, 29 Sept 2026
Founded
2004 · pytest.org, 23 Sept 2026
Install
The getting-started guide installs pytest with the command pip install -U pytest. · docs.pytest.org, 29 Sept 2026
Integrations
The documentation describes loading external plugins, including pytest-cov, and pytest can be invoked from Python code. · docs.pytest.org, 29 Sept 2026
Intended users
pytest is described for testing applications and libraries, and its enterprise support offer is aimed at organizations using open source dependencies to build applications. · docs.pytest.org, 29 Sept 2026
Plugins
pytest has a plugin architecture and the project home reports more than 1300 external plugins. · docs.pytest.org, 29 Sept 2026
Purpose
pytest is a framework for writing small, readable tests that can scale to complex functional testing for applications and libraries. · docs.pytest.org, 29 Sept 2026
Security
The project asks users to report suspected security vulnerabilities through a new GitHub security advisory instead of creating an issue. · docs.pytest.org, 29 Sept 2026
Support
The project directs users to GitHub issues for bugs and feature requests and offers commercial support and maintenance through Tidelift Subscription. · docs.pytest.org, 29 Sept 2026
Supported runtimes
The project home lists Python 3.10+ or PyPy 3; the version support page says pytest 9.0+ requires Python 3.10+. · docs.pytest.org, 29 Sept 2026
Test discovery
pytest automatically discovers test modules and functions using standard naming conventions. · docs.pytest.org, 29 Sept 2026
Test selection
The command line can select tests by module, directory, keyword, collection path, or marker expression. · docs.pytest.org, 29 Sept 2026

Where pytest stands on Freedom251

Look at these too