問題タブ [unittest2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
8187 参照

python - unittest2 と coverage.py を連携させるにはどうすればよいですか?

どうすれば一緒unittest2に仕事をすることができますか?coverage.py

理論的には次のようなもの

動作するはずですが、現在はエラーになります。

noseに相当するユーザーの場合はnosetests --with-coverage.

0 投票する
2 に答える
279 参照

python - unit2を使用してdoctestを実行することは可能ですか?

最近、Pythonユニットテストのニーズに合わせて、noseから新しいunittest2パッケージに切り替えました。コード内のdoctestを認識するための「discover」コマンドを取得できないという事実を除いて、それは私が望むすべてを実行します-私はまだそれらを実行するためにnoseを使用する必要があります。これは実装されていませんか、それとも私がここで見逃しているものがありますか?

0 投票する
3 に答える
29367 参照

python - `python -munittestdiscover`はテストを検出しません

Pythonのunittestdiscoverは私のテストを見つけられません!

私は自分のユニットテストを発見するために鼻を使ってきました、そしてそれはうまく働いています。プロジェクトのトップレベルから、実行すると次のnosetestsようになります。

Python 2.7ユニットテストで検出されたので、使用してみました

しかし、私は得る

私のディレクトリ構造は次のとおりです。

unittestの検出アルゴリズムがテストを見つけられない理由について何か考えがありますか?

私はWindows7でPython2.7.1とnose1.0.0を使用しています。

0 投票する
1 に答える
235 参照

python - Pythonで依存性注入されたオブジェクトのテストケースごとのスコープを取得するにはどうすればよいですか?

私はpython-inject、python 2.6(unittest2を使用)を使用しています。

インジェクションを使用するテストクラスと、同じ値を使用するテストケースがあります。現在、値を「シングルトン化」するためにinject.appscopeを使用しています。それ以外の場合は、ユーザーごとにインスタンス化されます。

理想的には、相互汚染を避けるために、各テスト実行後にAをリセットしたいと思います。(現在、tearDown()でA.reset()のようなことをします。)

inject.reqscoperegister()このようなもの(ローカルスコープのインスタンスのセット)をサポートしますが、 &unregister()(インジェクションオブジェクトキャッシュをリセットする)をどこで呼び出すかは本当にわかりません。Foo.aがすでにそれぞれに呼び出されている可能性があるため、Otは遅すぎsetUp()ます。tearDown()Foo.__init__()

これを行う方法についてのアイデアはありますか、それとも別のアプローチを使用する必要がありますか?

0 投票する
1 に答える
667 参照

python - Python Unittest2 - Discover() に TestCase を含めないようにする

次のように、unittest2onを使用して でPython2.5テストを検出しています。unittest.TestLoader.discover

test_path私のプロジェクトのベースにあるものもあります。

他の多くのクラスによって拡張およびオーバーロードされた基本クラスがありますが、これらの派生物に回帰がないことをテストしたいと思います。Aその基本クラスとその派生クラスA1A2、 などと呼びましょう。

unittest2.TestCaseの各派生物に対してオーバーロードできる基本クラスを作成したいと思いますA。つまり、次のような階層が必要です。

ここでの秘訣は、私がA抽象クラスにしていることであり、 などUTに適切に合格するほぼすべてのテストケースで失敗します.UT2

私にとって最も簡単な解決策は、 unittest2 をdiscover何らかの形で「スキップ」することUTです。これは、一致するパターン「test*.py」以外のファイルに入れることで可能になると思いますが、そうではないようです。

上記のシナリオに対する適切な解決策はありますか?

どんな考えや提案にも感謝します。

0 投票する
0 に答える
589 参照

django - Django 単体テストでデータベース エラーが発生する - トランザクションをコミットできない - SQL ステートメントが進行中

unittest2と一緒に使用しmanage.py testていますが、テストを実行しているように見える前に、以下のような恐ろしいデータベース エラーが発生します。私は自分の開発環境 (実際にはさまざまな理由でドリームホスト サーバー上) にいて、データベースとして sqlite を使用しています。

アプリを実稼働用の場所からコピーしても (そして、それに応じて settings.py を編集しても)、同じエラーが発生します (開発環境と同じデータベース ファイルをアドレス指定する必要はありませんが)。

更新: データベース ファイルのすべてのインスタンスを別のファイル名に移動しても、同じエラーが発生します。これにより、テスト環境が何らかの形で偽のデータベースを見ているか、非常に奇妙なことが起こっていると思われます。

基本的に、これを修正するためにどこから始めればよいかわかりません。何か案は?

0 投票する
1 に答える
97 参照

django - djangoで外部サービスへの呼び出しを実行するビューを単体テストする場合の良い習慣は何ですか

このビューは次のようになります。

それをテストする良い方法は何でしょうか?ビューはそれ自体でリソースをフェッチするので、Facebookをどのようにモックできるかわかりません。私の考えの1つの代替策は、偽のFacebookサーバーを作成し、設定で接続の詳細を提供することです。したがって、次のような単体テストを取得します。

私が抱えている問題は、偽のFacebookサーバーを面倒に見えるようにすることです。Facebook.get_thingy理想的には、私はむしろメソッドをモックできることを望みます。提案?

0 投票する
1 に答える
537 参照

python - LSF での Python 単体テストの実行

デフォルトの unittest モジュールを使用して作成した Python 単体テストを並列化する必要があります。私は2つのアプローチのどちらかを決定しようとしています:

  1. unittestを使用し続けますが、 Platform LSF (リモート実行ツール)を使用してテストを生成できるカスタム 'マルチプロセス' ランナーを使用します。例はTestOOBプロジェクトにあります。
  2. py.testを使用し、pytest-xdist プラグインをカスタマイズして、SSH の代わりに LSF を実行します。

私はすでに作業セットアップがあり、特にテスト スイートの生成 (Excel スプレッドシートを解析するジェネレーターを使用しており、自明ではありません) があるため、#1 に傾倒しています。

従うべき特定のアプローチに関する推奨事項はありますか?

注:私の会社は LSF を使用しており、他のチームとリソースを共有するために LSF を使用する必要があります。

0 投票する
2 に答える
255 参照

python - デフォルトの python-unittest 関数名の名前変更

Python の unittest テストランナーは、モジュールで指定されたテストを実行する前に、ファイルで定義された setUpModule() を探して実行します。関数名の名前を変更するために、デコレータまたはその他のツールを使用する方法はありますか?

例えば:

unittest のローダーがこの関数を setUpModule 関数として認識できるようにします。

私は unittest2 パッケージで python2.6 を使用しています。

ありがとう。

0 投票する
2 に答える
778 参照

python - python unittest2 - テストメソッド名を setup メソッドに公開する

SetUp()unittest が各テストの前に実行するメソッド内から、実行しようとしているテスト メソッドの名前を見つける必要があります。すべてのテストメソッドを個別に実行せずにこれを行うにはどうすればよいですか?

例: