2014-05-05 97 views
1

我學習測試驅動開發...爲什麼我的測試沒有在我的TestCase子類中運行?

我寫了一個測試失敗了,但它不是...

(env)glitch:ipals nathann$ ./manage.py test npage/ 
Creating test database for alias 'default'... 

---------------------------------------------------------------------- 
Ran 0 tests in 0.000s 

OK 
Destroying test database for alias 'default'... 
在NPAGE

/我有tests.py:

from django.test import TestCase 
from npage.models import Tip 
import datetime 


# Example 


class TipTester(TestCase): 

    def setUp(self): 
     print dir(self) 
     Tip.objects.create(pk=1, 
          text='Testing', 
          es_text='Probando') 

    def tips_in_spanish(self): 
     my_tip = Tip.objects.get(pk=1) 

     my_tip.set_language('es') 

     self.assertEqual(my_tip.text, 'this does not just say \'Probando\'') 

我在做什麼錯?我讀過this,但我仍然無法弄清楚這裏出了什麼問題。

+0

我不認爲你需要在你運行的命令npage後的正斜槓。 –

+1

顯然你可以做很多不同的方法,甚至隔離應用程序本身的測試用例:https://docs.djangoproject.com/en/dev/topics/testing/overview/#running-tests – broinjc

+0

嗯,我剛剛學會了一些新的東西 –

回答

3

你的測試功能啓動時需要測試:

def test_tips_in_spanish(self): 

文檔here

「當你運行你的測試,測試工具的默認行爲是要找到所有的測試用例(即,unittest.TestCase的子類)放在任何名稱以test開頭的文件中,自動構建一個測試套件,然後運行該套件。「

+1

請注意,問題不在於測試沒有失敗,而在於它們不是*運行*。 「冉0測試在0.000s」 –

+0

謝謝!沒有意識到這也是爲了功能。 '在任何名稱以test開始的文件中' – broinjc

+0

@broinjc沒問題! – Alex

相關問題