問題タブ [python-unittest]
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.
python - unittest アサーションで発生する例外
2 つの整数が等しいかどうかをテストする単体テストを実行すると、失敗を報告する単体テストではなくアサーション エラー例外が発生し、次のテストに進みます。これがテストコードです(要点を証明するために大幅に簡略化されています)。
トレースバックは次のとおりです。
何か間違ったことをしていますか、それともテスト アサーションのしくみを誤解していますか?
記録のために、私は Windows 7 で Python 3.2.1 を使用しています。
ティア、アラン
python - pyunit のサブクラスに異なるテスト ドキュメントを用意するにはどうすればよいですか?
this questionとthis oneを見てきましたが、私のユースケースで pyunit がどのように機能するかについてまだ興味があります。
複数の入力に対して同じメソッドをテストしたい。これを行うために、いくつかのテスト メソッドを持つクラスと、異なるsetUp
メソッドを持つ 2 つのサブクラスを作成しました。
このようなもの:
次に、2 番目の 2 つのクラスを a に追加し、それをTestSuite
で実行しTextTestRunner
ます。
出力は次のようになります。
どのテストケースがどの時点で実行されているかを追跡する明確な方法はありません。
これを修正するにはどうすればよいですか?
私が現在行っているのは、__init__
次のような各サブクラスにメソッドを追加することです。
これはひどいハックのようで、pyunit の将来のバージョンで動作する保証はありません。目的の docstring とサブクラスで別のローカル変数を定義してTextTestRunner
、代わりにそれを使用することもできますが、それには独自の問題があります。これを回避するより良い方法はありますか?
python - pyunit を使用した「外部」プログラムの拡張機能の単体テスト
ダイブ・イン・トゥー・パイソンのチュートリアルを読んでhttp://pyunit.sourceforge.net/を見たので、ユニットテストをどこから始めればよいのかわからなくて困っています。
入力デッキに python を使用する分析ソフトウェア (「prog.exe」と呼びます) があります。いくつかの便利な機能を提供するために、その入力デッキからインポートする Python モジュールの作成を開始しました。したがって、これらの分析のいずれかを実行すると、次のようになります。
prog.exe inputdeck.py
含まれる場所inputdeck.py
:
では、でテストをセットアップして実行するにはどうすればよいmymodule
でしょうか。上記は、テストのメソッドのシステム コールに含まれている必要がありますsetUp
か?
わかりました - 解決策:
unittest.main()
これはコマンド ライン ツールであるため、使用しないでください。代わりに、次のように適切な unittest メソッドを直接呼び出します。
コマンド ラインから次を実行します。
含まれる場所mytests.py
:
http://docs.python.org/release/2.6.7/library/unittest.html#unittest.TextTestRunnerの例を参照してください
python - Python unittest でテスト スイートを作成するにはどうすればよいですか
私は試した:
しかし、私はエラーになります:
python - sqlalchemy コードの単体テストで assertRaises を使用しているときに結果を理解できない
sqlalchemy コードを単体テストしようとしています。
今私の単体テストで:
add_user 関数呼び出しで整合性エラーが発生した場合、このテストは成功し、例外がない場合は失敗します。しかし問題は、両方のケースでテストが成功することです。
なぜこうなった?私のコードに何か問題がありますか? または assertRaises は、私が期待しているものとは異なる動作をしますか?
最初は、try 句に except を入れており、例外はそこでのみ処理され、assertRaises は例外を取得しないため、これが起こっていると思いました。しかし、これが事実である場合、assertRaises は例外を受け取らずに失敗するはずです。
単体テストの書き方に問題がある場合は、教えてください。コーディングの習慣に単体テストを組み込むことをまだ学んでいるからです。
python - PyUnitでテストを実行する前に、最初にメソッドを1回だけ実行する
PyUnitを使用して、コードの単体テストを記述しています。セットアップメソッドは、テストが実行される前に毎回呼び出されます。テストを実行する前に、最初に1回だけ実行されるメソッドを定義する方法はありますか?
助けてくださいありがとう
python - pydev で unittest を使用して Python でプロジェクト階層全体を単体テストする
私は unittest モジュールを使用して、Pydev を使用してパッケージの階層構造で作成された Python コードを単体テストしています。実際のソースコードとpydevでの単体テストに別々のソースフォルダーを使用しようとすると、問題が発生します。
階層を分離しようとしているときに、テスト ファイルでアプリケーション ファイルを参照する際に問題が発生しています。Junit の方法、つまり、異なるソース フォルダーを使用して同じパッケージ名を維持することは可能ですか?
eclipse - PyUnit への引数が正しく解析されない
Eclipse で PyUnit テストを Python 単体テストとして実行しようとすると、失敗します。これは、PyUnit に送信される引数が次の順序で来るためです: file-to-test --port portno. POSIXLY_CORRECT と呼ばれる環境変数があることを発見しました。これが設定されている場合、PyUnit は引数が特定の順序 (オプションが最初) で来ることを想定します。
これらの引数が設定されている場所を見つけるために Eclipse のあらゆる場所を調べましたが、それらを見つけることができません。そのため、回避策として、POSIXLY_CORRECT が設定されていない環境を使用するように実行構成を変更します。しかし、これは非常に厄介です。
テストを実行するために実行構成を変更する必要がないように、これを解決する方法を知っている人はいますか?
python - pyunitを使用してテストケースを動的にロードすることは可能ですか?
pyunitを使用して動的にテストケースを生成することは可能ですか?
私のテストケースフォルダには、、、などの名前のテストケースが含まれad_xxxxx
ます。nd_xxxxx
pc_xxxxx
では、テストケースのいずれかを動的にロードして一覧表示し、pyunitを使用してテストを選択することは可能ですか?
eclipse - PyUnit : XML-RPC リクエストの読み取りに失敗しました: 3 バイトの UTF-8 シーケンスのバイト 2 が無効です
Eclipse から pyunit を実行すると、PyUnit ビューが更新されず、次のエラーが発生します。
このエラーの原因は何か分かりますか?