2014-09-15 3 views
1

Я запускаю модульные тесты на pycharm, но некоторые из них обнаруживают что-то странное. Когда я начал тестировать класс, более конкретно свои методы, я просто написал тестовые случаи, как следующее:Python Unit-Testing All Test Cases

# hey.py 
class hey: 

    def hello(self): 
     return True 

    def bye(self): 
     return 'Bye' 


# test_hey.py 
from unittest import TestCase 
class TestHey(TestCase): 
    def test_hello(self): 
     self.fail() 

    def test_bye(self): 
     self.fail() 

Когда я нажимаю бежать, он будет автоматически запускать все тесты. Отлично. Но с сегодняшнего дня, для некоторых из моих других пользовательских классов, похоже, он запускает только первый. т.е.) просто работает test_hello и полностью не тестирует test_bye. Я бы привел пример, но поведение несовместимо, поскольку оно работает иногда, и оно не является следующим. Я просто хотел узнать, знает ли кто-нибудь, что я вообще что-то пропустил?

EDIT: Когда я закомментировать тестовые случаи, которые фактически прибежал и оставляя те, которые Арент побежали, я получаю следующее сообщение об ошибке:

Traceback (most recent call last): 
    File "C:\Program Files (x86)\JetBrains\PyCharm Community Edition 3.4.1\helpers\pycharm\utrunner.py", line 148, in <module> 
    testLoader.makeTest(getattr(testCaseClass, a[2]), testCaseClass)) 
AttributeError: 'TestLoader' object has no attribute 'makeTest' 

ответ

2

Вы можете запускать тесты из любого количества мест в PyCharm , В зависимости от того, как вы запускаете тесты, вы измените те тесты, которые выполняются.

Если вы щелкните правой кнопкой мыши проект или папку, все тесты в проекте или папке (и ее подпапках) будут запущены. Щелкните правой кнопкой мыши файл, затем все тесты в файле будут запущены. Щелкните правой кнопкой мыши в тестовом примере, затем запускается только этот тестовый пример. Щелкните правой кнопкой мыши внутри метода тестирования, а затем запускается только этот метод тестирования.

Если вы используете конфигурации запуска от кнопки запуска вверху, будет запущена последняя известная тестовая конфигурация. Поэтому, если вы выполняли только определенные тесты в этом файле, тогда будут выполняться только те тесты. Возможно, вы изменили конфигурацию запуска, выполнив все тесты, если вы решили перезапустить только неудачные тесты в любой момент.

Чтобы решить проблему, щелкните правой кнопкой мыши файл или тестовый файл, который вы хотите запустить, и выберите «Run» Unittests in ... ». Предоставим скриншот, но PyCharm, похоже, проглатывает мои нажатия клавиш.

0

Для меня я испортил отпечаток тестов.