2016-12-13 68 views
1

我有一個名爲AllTests.py Python文件看起來像下面這樣:如何運行和調試單元測試中的Spyder IDE

import unittest 
from SomeWonderfulTest import SomeWonderfulTestCase 

def runAllTestsNow(): 
    theTestSuite = unittest.TestSuite() 
    theTestSuite.addTest(unittest.makeSuite(SomeWonderfulTestCase) 
    return theTestSuite 

if __name__ == "__main__": 
    unittest.main(defaultTest='runAllTestsNow') 

我可以在命令行中運行如下這樣:

python -m unittest AllTests 

但是,我想使用Spyder IDE調試一些問題。我知道在Spyder中指定命令行選項,我可以進入Run-> General Setting-> Command line options。但是,當我嘗試將「-m unittest」放入這些選項時,出現錯誤,提示「選項-m無法識別」。它似乎試圖將參數發送到AllTests.py文件而不是python。

如何設置Spyder來調試這些unittests?

+0

如果您只是將測試文件作爲常規文件運行,即使用F5,會發生什麼情況? –

回答

-1

所以我對Spyder來說相當新,因爲我們使用Visual Studio來開發我們的開發工具,但是校長似乎很相似。

那麼,怎樣有些東西在工作如下:

IDE是你所使用的開發接口。 (Spyder在你的情況下,或VS在我的。)

Anaconda是(我的)Python環境,它讀取並執行您編寫的python 腳本。這爲您提供瞭解釋器窗口等.IDE使用Python環境來運行腳本。

您可以通過幾種不同的方式運行測試。

您已經創建了一個叫做AllTests.py的包裝類/方法,它是一個python腳本。

這個AllTests.py腳本可以直接在控制檯中運行,就像您在問題中概述的那樣。

您也可以像運行其他任何腳本一樣運行AllTests.py腳本,如carlos所述。

您也可以在您的IDE(Spyder/VS/etc)中安裝一個解釋所有UnitTest類的插件,並以可視方式顯示它們,而不是使用命令行。 測試資源管理器(在VS中調用它)或其他插件可以查看你的代碼,找到所有的測試,並以各種不同的方式將它們組合在一起,允許你通過名稱/組/ etc執行它們,並給出你進一步瞭解測試及其輸出。 (執行時間,通過/失敗輸出等)

一個我發現Spyder的是在這裏: 如果https://pypi.python.org/pypi/spyder-unittest

不知道它是什麼好,因爲我還沒有使用過它。這裏的其他人可以評論它的能力/表現。

下面是Visual Studio測試瀏覽器的截圖:

VS Test Explorer

根據您的要求和發展的做法,這種檢測插件可能是你更好的選擇。

我希望這有些幫助。

+1

對不起,這個答案沒有解決這個問題,因爲我無法從你對VS的解釋中學會如何使用Spyder IDE。 – Echsecutor