Socket
Socket
Sign inDemoInstall

pytest-level

Package Overview
Dependencies
1
Maintainers
1
Alerts
File Explorer

Install Socket

Detect and block malicious and high-risk dependencies

Install

    pytest-level

Select tests of a given level or lower


Maintainers
1

Readme

pytest-level

Mark test cases with a level, then de-select tests with a given level or higher.

When giving a teaching/practice assignment with pre-written tests, either all tests can be given at once (leaving students overwhelmed and unsure which failures should be fixed next), or piece-wise (in individual files -- which becomes a mess for larger projects).

With this plugin, tests for a teaching/practice assignment can be given in a single file. Students are then told to run with --level 1, fix the few red tests, then go to --level 2, etc. Unlike with keywords, all the lower-level tests will still be run: --level 2 will run both level(1) and level(2) tests.

Installation

In a Python environment (e.g. venv), do:

python -m pip install pytest-level

Usage

Mark tests with a numeric level marker:

@pytest.mark.level(1)
def test_basic_math():
    assert 1 + 1 == 2

@pytest.mark.level(2)
def test_intermediate_math():
    assert 10 / 2 == 5

@pytest.mark.level(3)
def test_complicated_math():
    assert 10 ** 3 == 1000

Then, run pytest with --level:

python -m pytest --level 2

This will deselect tests of a higher level.

Without --level, all tests are run.

Licence

The code is available under a MIT license. May it serve you well.

FAQs


Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc