PyCharm
pytest
configuration
testing
Python

How do I configure PyCharm to run py.test tests?

Master System Design with Codemia

Enhance your system design skills with over 120 practice problems, detailed solutions, and hands-on exercises.

Introduction

PyCharm is a popular integrated development environment (IDE) that offers a comprehensive suite of tools for Python development. One of its most powerful features is its ability to integrate directly with testing frameworks like `py.test` (now known as just `pytest`). This article will guide you through configuring PyCharm to seamlessly run `pytest` tests, illustrating the process with technical explanations and examples.

Prerequisites

Before configuring PyCharm for `pytest`, make sure you have the following:

  • PyCharm IDE: Ensure that PyCharm is installed on your system. The following instructions are based on PyCharm Professional Edition, but similar steps should apply to the Community Edition.
  • Python: A working Python environment set up on your system.
  • Pytest: Install `pytest` if you haven't already by running `pip install pytest` in your terminal.

Step-by-Step Configuration

Step 1: Install Pytest

Since `pytest` isn't bundled with Python, you need to install it using pip:

  • Navigate to `File > Settings` (on Windows/Linux) or `PyCharm > Preferences` (on macOS).
  • Select `Project: <Your Project Name> > Python Interpreter`.
  • Choose the appropriate interpreter from the list. If not present, add your Python path.
  • Go to `File > Settings` (on Windows/Linux) or `PyCharm > Preferences` (on macOS).
  • Under `Tools`, click on `Python Integrated Tools`.
  • Look for the `Testing` section.
  • From the `Default test runner` dropdown, select `pytest`.
  • Click `Apply` and then `Ok` to confirm the changes.
  • Using Context Menu:
    • Right-click on the `test_example.py` file in the project explorer.
    • Select `Run 'pytest in <your file>'`.
  • Using the Run Menu:
    • Open the `test_example.py` file.
    • From the Run menu, choose `Run...` and select your test file.
    • Go to `Run > Edit Configurations...` in the top menu.
    • Click the `+` button and select `Python tests > pytest`.
    • Name your configuration (e.g., `Run All Tests`).
    • Set the `Target` to where your tests are located (e.g., a module or directory).
    • Optional: Set additional options if needed, such as environment variables, working directory, etc.
    • Choose your newly created configuration from the dropdown in the toolbar and click the Run button.
  • Go to `File > Settings` and select `Project: <Your Project Name> > Python Interpreter`.
  • Click on the gear icon next to the interpreter list and choose `Add`.
  • Select `Existing environment` and navigate to the path of your virtual environment's Python executable.

Course illustration
Course illustration

All Rights Reserved.