1

unittestで実装された一連のテストがあります。これらは自動的に実行されます。せいぜい1時間に1回実行したいのですが、この条件をチェックするメソッドがあり、True(実行しても問題ない場合)またはFalse(テストを終了する必要がある場合)を返します。

チェック関数がFalseを返した場合に、setUpClassメソッドまたはsetUpメソッドが終了する(失敗しない)ように、これをunittestと統合するにはどうすればよいですか?

PS:私はPython 2.6を使用しているので、これらを使用することはできません

4

2 に答える 2

2
  1. Alex が述べたように、最後にテストを実行した日付を覚えておいて、単体テストではなくデプロイ スクリプトからテストを実行するか実行しないかのいずれかを行う必要があります。

  2. Python 2.6 で最新の unittest クラスが必要な場合は、「pip install unittest2」を実行できます。

  3. 独自のデコレータを介してこのようなことを行うことは可能です。各テストケースを関数内にラップして、それらを実行するか、何らかの条件でスキップしますが、それは良い解決策ではありません。

于 2012-09-28T13:23:11.770 に答える
1

2.6 の unittest はテストのスキップをサポートしていません (この機能は 2.7 で追加されました: http://docs.python.org/library/unittest.html?highlight=unittest#skipping-tests-and-expected-failures )。2.7 機能の以前のバージョンへのバックポートであるunittest2を使用できます。

unit2ラッパー スクリプトを使用してテストを呼び出す必要があります。

于 2012-09-28T13:23:58.703 に答える