2016-11-10 4 views
0

Я хотел бы запустить один тест, содержащийся в подклассе unittest.TestCase, используя nose2, следующий за How to run specific test in Nose2, но он, похоже, не работает для меня. Я использую следующий пример сценария, который я назвал mickey_mouse_test.py:Как запустить одиночный тестовый пример в носу2

import unittest 

class TestMickeyMouse(unittest.TestCase): 
    def test_1plus1is2(self): 
     self.assertTrue(1+1 == 2) 

    def test_to_uppercase(self): 
     self.assertEqual("hello".upper(), "HELLO") 

if __name__ == "__main__": 
    unittest.main() 

Если я бегу nose2 mickey_mouse_test в том же каталоге, он запускает все тесты в модуле:

[email protected]:~/Documents/Scratch$ nose2 mickey_mouse_test 
.. 
---------------------------------------------------------------------- 
Ran 2 tests in 0.001s 

OK 

Однако, если я пытаюсь запустить только test_to_uppercase как и я получаю сообщение об ошибке:

[email protected]:~/Documents/Scratch$ nose2 mickey_mouse_test.test_to_uppercase 
E 
====================================================================== 
ERROR: mickey_mouse_test.test_to_uppercase (nose2.loader.LoadTestsFailure) 
---------------------------------------------------------------------- 
AttributeError: module 'mickey_mouse_test' has no attribute 'test_to_uppercase' 

---------------------------------------------------------------------- 
Ran 1 test in 0.001s 

FAILED (errors=1) 

Если я использую вариант -s я все еще получаю ошибку, Albe он другой один:

[email protected]:~/Documents/Scratch$ nose2 -s mickey_mouse_test.test_to_uppercase 
E 
====================================================================== 
ERROR: mickey_mouse_test.test_to_uppercase (nose2.loader.LoadTestsFailure) 
---------------------------------------------------------------------- 
OSError: /home/kurt/Documents/Scratch/mickey_mouse_test.test_to_uppercase is not a directory 

---------------------------------------------------------------------- 
Ran 1 test in 0.000s 

FAILED (errors=1) 

Я также попытался читать «Задание тестов для запуска» раздел в http://nose2.readthedocs.io/en/latest/usage.html, в котором говорится, что «Python объект часть» должен быть «пунктирная имя». Я не понимаю, почему в этом случае mickey_mouse_test.test_to_uppercase не является «пунктирным именем». Любые идеи, почему это не работает?

ответ

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