简体   繁体   中英

pytest doesn't run any test

pytest doesn't run any tests and it is not clear why. I tried to use --debug but didn't get any valuable information. It is completely not clear how to debug this sort of issues with pytest. (Looks like some issue with pytest configuration / env variables / test names patterns?)

Example of test file:

import pytest


@pytest.mark.sanity
def test_me():
    """I'm a test."""

    assert True

But pytest doesn't run any test, why?

$ pytest
================================================== test session starts ===================================================
platform linux2 -- Python 2.7.12, pytest-3.1.3, py-1.4.34, pluggy-0.4.0
rootdir: /home/qawizard/pytest-hell, inifile:
plugins: xdist-1.15.0, timeout-1.2.0
collected 1 item s

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Exit: Done! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
============================================== no tests ran in 0.13 seconds ==============================================

To determine why tests are not running, these steps are useful:

  1. Verify that all files with test cases start with 'test_' word.
  2. Verify that all test cases names also start with 'test_' word.
  3. Verify that you have created pytest.ini file in the root directory.
  4. Verify that you have __init__.py file in all directories/sub-directories of the project.

You need all tests to start with test_ but also you need to tell Pytest exact which files to look for:

# pytest.ini

[pytest]

DJANGO_SETTIONS_MODULE = myproject.settings
python_files = tests.py test_*.py

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM