2

ノーズテストでは、実行したいテストをノーズテスト構成ファイルで指定できることを私は知っています。

[nosetests]
tests=testIWT_AVW.py:testIWT_AVW.tst_bynd1,testIWT_AVW.py:testIWT_AVW.tst_bynd3

ただし、上記は面倒に見え、特に改行を使用できない場合、多くのテストが追加されると保守が難しくなります。unittests TestSuite 機能を使用して実行するテストを指定できると、はるかに便利であることがわかりました。例えば

def custom_suite():

    suite = unittest.TestSuite()
    suite.addTest(testIWT_AVW('tst_bynd1'))
    suite.addTest(testIWT_AVW('tst_bynd3'))
    return suite
if __name__=="__main__":

    runner = unittest.TextTestRunner()
    runner.run(custom_suite())

質問: .py ファイル内で、 nosetests によって実行されるテストを指定するにはどうすればよいですか?
ありがとう。
PS すべてのテストを強制的に 1 行に書かない、nosetest 設定ファイルを介してテストを指定する方法があれば、2 番目の代替手段として、私もそれを受け入れます。

4

2 に答える 2

1

私があなたの質問を正しく理解していれば、ここにいくつかのオプションがあります。

  • 特別なノーズ デコレータでテストをマークできます:istestおよびnottest. ドキュメントを見る
  • タグでテストをマークできます
  • テスト スイートのテスト ケースに参加できます。私は自分で使用したことはありませんが、テストスイートを尊重するために、nose のデフォルトのテスト検出をオーバーライドする必要があるようです ( docsを参照) 。

それが役立つことを願っています。

于 2013-04-28T22:31:33.127 に答える