Getting Nose To Ignore A Function With 'test' In The Name
The nose discovery process finds all modules whose name starts with test, and within them all functions which have test in the name and tries to run them as unit tests. See http://
Solution 1:
Tell nose that the function is not a test - use the nottest
decorator.
# module foo.accountsfrom nose.tools import nottest
@nottestdefmake_test_account():
...
Solution 2:
Nose has a nottest
decorator. However, if you don't want to apply the @nottest
decorator in the module you are importing from you can also simply modify the method after the import. It may be cleaner to keep unit test logic close to the unit test itself.
from foo.accounts import make_test_account
# prevent nose test from running this imported method
make_test_account.__test__ = False
You can still use nottest
but it has the same effect:
from nose.tools import nottest
from foo.accounts import make_test_account
# prevent nose test from running this imported method
make_test_account = nottest(make_test_account)
Post a Comment for "Getting Nose To Ignore A Function With 'test' In The Name"