2016-12-13 2 views
1

У меня есть файл с именем питона AllTests.py, который выглядит следующим образом:Как запускать и отлаживать UnitTest в Spyder IDE

import unittest 
from SomeWonderfulTest import SomeWonderfulTestCase 

def runAllTestsNow(): 
    theTestSuite = unittest.TestSuite() 
    theTestSuite.addTest(unittest.makeSuite(SomeWonderfulTestCase) 
    return theTestSuite 

if __name__ == "__main__": 
    unittest.main(defaultTest='runAllTestsNow') 

Я могу запустить в командной строке следующим образом:

python -m unittest AllTests 

Тем не менее, я хотел бы использовать IDE Spyder для отладки некоторых проблем. Я знаю, чтобы указать параметры командной строки в Spyder, я могу перейти в Run-> General Setting-> Параметры командной строки. Однако, когда я пытаюсь поместить «-m unittest» в эти параметры, я получаю сообщение об ошибке «option -m not detected». Похоже, он пытается отправить аргумент в файл AllTests.py вместо python.

Как настроить Spyder для отладки этих unittests?

+0

Что произойдет, если вы просто запустите файл тестов как обычный файл, то есть с помощью F5? –

ответ

-1

Итак, я довольно новичок в Spyder, так как мы используем Visual Studio для нашего разработчика, однако принципы выглядят одинаково.

Итак, как мы есть, что работает следующим образом:

IDE является интерфейс, который используется, чтобы сделать ваше развитие. (Spyder в вашем случае, или VS в моем случае.)

Anaconda - это (моя) среда Python, которая читает и выполняет написанные вами скрипты python . Это дает окно интерпретатора и т. Д. В среде IDE используется среда Python для запуска ваших скриптов.

Вы можете запускать тесты несколькими способами.

Создан класс/метод-оболочка под названием AllTests.py, который является скриптом python.

Этот скрипт AllTests.py можно запускать в консоли напрямую, как вы указали в своем вопросе.

Вы также можете запустить сценарий AllTests.py так же, как и любой другой скрипт, как это указано в carlos.

Вы также можете установить аддон в свою IDE (Spyder/VS/etc), которая интерпретирует все классы UnitTest и отображает их визуально, вместо использования командной строки. Тестировщик (как его называют в VS), или альтернативный аддон будет просматривать ваш код и находить все ваши тесты, группировать их разными способами, позволяя выполнять их по имени/группе/и т. Д., И давать вы получите дополнительную информацию о тестах и ​​их результатах. (Время выполнения, годен/не годен выходы и т.д.,)

Один я нашел для Spyder здесь: https://pypi.python.org/pypi/spyder-unittest

Не уверен, если это какой-то хорошо, как я не использовал его. Кто-то еще здесь может прокомментировать его способность/производительность.

Ниже приведен скриншот Visual Studio Test Проводник:

VS Test Explorer

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

Надеюсь, это поможет.

+1

Извините, этот ответ не затрагивает вопрос, так как я не могу узнать, как использовать IDE Spyder из ваших объяснений о VS. – Echsecutor