Если вы измените вызов discover()
для предоставления пути, например .
для текущего каталога:
test_cases = unittest.TestLoader().discover('.')
Тогда загрузчик найдет файлы в рабочем каталоге, который вы выполняетеСценарий из которого соответствует шаблону 'test*.py'
.Если я добавлю ваш скрипт в файл run.py
, а рядом с ним тест в файле с именем test_example.py
со следующим тестом UnitTest:
import unittest
class TestStringMethods(unittest.TestCase):
def test_upper(self):
self.assertEqual('foo'.upper(), 'FOO')
Тогда выходной xml-файл содержит ожидаемыйрезультаты теста.
Итак: убедитесь, что вы запускаете скрипт из того же каталога, в котором находятся ваши тесты (или что вы меняете .discover('.')
на любой каталог, в котором находятся ваши тесты, и что ваши тестовые файлы соответствуют test*.py
pattern.
Также обратите внимание, что у nose.run(..)
есть аргумент только для имени модуля, чтобы найти тесты, которые могут оказаться полезными:
nose.run(module=".")