2013-11-04 81 views
0

運行Python單元測試我跑通過外殼執行我的測試文件,並在測試文件的末尾調用與Python 2.7和3.x

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

我的Python單元測試。

我要支持Python 2.7版和Python 3的(我寫崇高文本的插件。)

我的shell中運行Python 2.7版,這與我的版本的Mac OS X.崇高的文本3來到自帶捆綁它是自己的Python版本(一些python 3的味道)。有沒有一種方法可以在shell中使用python 2.7和python 3運行我的測試文件(希望無需安裝另一個版本的python)?

+0

您是否問過如何使用系統上的兩個Python版本來執行代碼,或者如何使代碼與兩者兼容?他們都是合理的問題,我只是不確定你問的是哪一個。 – Blckknght

+1

@Blckknght:我想執行兩個版本的代碼!感謝做出這個命運。 – DudeOnRock

回答

3

此問題的標準工具是six,它可以幫助您編寫一個腳本,該腳本在python2和python3以及tox下運行得很好,以幫助您在多個python版本上運行測試套件。一旦你完成腳本的工作和測試,並配置了tox,你只需運行tox即可在各種python下運行你的測試套件。

+0

謝謝!我會給一個測試驅動器(雙關語意)。我的初步瞭解是tox使用虛擬環境。由於在我的系統上運行了兩個*實際版本的python,有沒有辦法在安裝第三方程序的情況下運行測試? – DudeOnRock

+0

安裝軟件包(使用setup.py和virtualenv)有助於確保用戶獲得與開發人員相同的體驗。由於這是tox的核心功能,我不認爲它們提供了一種禁用它的模式。 – bukzor

+0

@DudeOnRock:任何結果? – bukzor