2016-05-12 2 views
1

Я не знаю, что я сделал, или какие настройки я испортил, но я использую Pycharm уже несколько месяцев, и вдруг я вступил в некоторые функциональные возможности, из которых я не могу выбраться.Как отлаживать или запускать .py-файл в Pycharm без выполнения «Nosetests»?

Я по-прежнему относительно новичок в python, поэтому я настроил простой тест на объект Python. Я хотел посмотреть, будет ли объект обновляться внутри вызываемой функции ... но это не относится к делу. Так или иначе, через соглашение об именах или что-то еще, мне удалось убедить Pycharm переключиться на выполнение «nosetests», когда я нажимаю debug или run ... вместо запуска кода. Консоль не выводит ничего ... и ситуацию невозможно Google ...

Во всяком случае, я следующий в проекте PyCharm Python:

Я создал каталог с именем царапины (есть __init__.py файла в он), а затем файл python с именем scratch.py.

Внутри scratch.py, я написал следующий код:

def add_item_function(x): 
    x.list.append("hello,world") 

class scratch(object): 
    def __init__(self): 
     self.list = [] 
    def add_item(self): 
     add_item_function(self) 

x = scratch() 
add_item_function(x) 
print(x.list) 
y=1 #<-- here is where I put the breakpoint 

И независимо от того, что я делаю, то IDE работает только «nosetests» ... Я попытался поставить точку останова в ... и код будет на самом деле ударил точку останова на отладке ... но единственный вывод на консоль относится к «nosetest», а не к моему коду.

Кроме того, я ничего не изменил. Я делаю это все время, делая классы, а затем выполняю функции и код под ними ... и этого никогда не случалось раньше.


Я нашел конфигурацию для отладки ... и Nosetests по умолчанию в «сценарии» в рамках проекта ... но я не могу вывести его из строя - это кнопка радио. Некоторая часть моего кода, видимо, должна быть nosetest ... Как переключить это/выключить и заставить программу работать так, как я ей рассказываю?

ответ

0

Вы можете попробовать Edit Configurations: https://www.jetbrains.com/help/pycharm/2016.1/creating-and-editing-run-debug-configurations.html

еще одно предложение заключается в использовании if __name__ == '__main__', чтобы указать, что это точка входа, для более detais: What does if __name__ == "__main__": do?

+0

Просто, чтобы добавить к этому ... PyCharm имеет разные вкусы конфигурации запуска, включая несколько вариантов конфигурации теста. Нос - один из них, но вы также можете выбрать простой unittest. Я сделал [видео] (https://www.youtube.com/watch?v=-VzJvNLooj4), чтобы ввести эту тему и [более углубленное тестовое видео] (https://blog.jetbrains.com/pycharm/2016/04/углубленных-скринкаст-на-тестирования /). –

Смежные вопросы