When debugging unit tests (through the pycharm test runner), one can turn on the interactive command line, but (unlike when debugging regular scripts) the commands entered d
This is likely because your test runner is capturing stdout but not stderr.
I use py.test which captures both stdout and stderr so I see no output at all. If I want to see output I have to pass the -s
flag to my py.test runner which can be done by modifying the run/debug configuration and adding this flag to the options field.
(Run > Edit Configurations > Defaults > Python tests > py.test > add -s
to the "additional arguments" field.)
>>> print 'a'
a
>>> import sys
>>> sys.stderr.write('moof')
moof
>>> sys.stdout.write('moof')
moof
>>> sys.stderr.write('test')
test
Note: the -s
flag can equally be used with nose tests