Skip to content

TPI: Coverage with unittest #24160

Closed
Closed
@eleanorjboyd

Description

@eleanorjboyd

Refs: #22827

Complexity: 5

Author: @eleanorjboyd

Create Issue

Create Issue


In this TPI you will be testing the new coverage implementation for Python with UNITTEST.

Find or create a python project that has tests and test coverage. Hopefully copilot can help you with this but you can also look at my testing example repo and specifically this test which will call my inc_dec.py file with functions: https://github.com/eleanorjboyd/inc_dec_example_repo/blob/main/inc_dec_example_test_suite/test_two_classes.py.

  1. Create a venv using the "create environment command" choose python >= 3.8
  2. In the terminal, run python -m pip install coverage.
  3. From the command palette, run "python: configure tests", select unittest and then "." (root directory or whatever folder your tests are located in)
  4. EDIT: now reload vscode window (this should mitigate an outstanding bug)
  5. click the test explorer icon (beaker)
  6. run tests with coverage using the button
  7. look at coverage by clicking the beaker icon below the test explorer icon
  8. create a function that has an "if / else" block, create tests so only one of those conditionals is met, make sure the UI shows the conditional you missed as not covered which will also appear red in the editor for that function.
  9. try different things and make sure they react correctly, ideas like: comments (shouldn't count towards coverage), blank lines (shouldn't count), blank files (shouldn't count and coverage should be grey in the coverage tab)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions