我正在測試用python編寫的web應用程序。Python鼻子測試跳過某些測試
假設我在我的test_login.py模塊中有5個測試。
每一個測試都是一個類。
經常有一個擴展TestFlow類的基礎測試,它是我們預定義的測試類。
然後本模塊中的其他測試擴展了該基礎測試。
例如:
#The base test
TestLogin(TestFlow):
#do login_test_stuff_here
#Another test in the same module
TestAccountDetails(TestLogin)
#do account_details_test_stuff_here
...
這實際上是相當方便的,因爲爲了測試例如AccountDetails用戶必須先登錄,這樣我就可以從TESTLOGIN測試繼承,我準備好測試等功能作爲登錄用戶。
所有測試都在Project/project/tests文件夾中。
我們使用nosent與選項--with-pylons進行測試。
而我的問題是,如果有一種方法來標記某些TestClass爲「不要測試這一個」。
因爲我不想浪費時間直接執行這些「基本測試」,因爲它們將由其他測試執行,並由它們執行。
可能會有這些測試的音調,我希望每一秒都可以保存。
我已經發現了一些像跳躍,SkipTest或@nottest,但對於一個ceratin的TestClass內test_methods這些唯一的工作,所以我不認爲它會在這裏工作,是我對每一個類測試用例。
請注意,匹配正則表達式不是唯一包含的門 - * nose還會從unittest.TestCase子類*加載測試。它似乎也會爲它輸入的任何內容執行此操作。我在名爲'foo_helpers.py'的模塊中有一個名爲'FooMixin'的測試,因爲它是從'unittest.TestCase'派生出來的,所以我們將其視爲一個測試。 – 2013-05-29 12:41:12