問題タブ [xdist]
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 - Windows ホストからリモート Linux マシンで Python 単体テストの一部を実行する
私の状況は次のようになります。
- Windows ベースのサーバー プログラムと Linux ベースのクライアントがあります。
- ローカル Linux マシンで実行され、実行する必要がある Linux クライアントの多くのテストがあります。
- Linux クライアントにメッセージを送信する Windows サーバー マシンからコードを実行する必要があります。次に、これらのメッセージの効果を検証するテストが Linux クライアント マシンで実行されます。
したがって、典型的なテスト ケースは次のようになり、Windows ホストで実行されます。
pytest-xdistが何らかの形でそれを実行できることがわかりました。
それを使用する方法に関する良いチュートリアルまたはコード例はありますか?
pytest - pytest xdist と setup フックの実行
pytest_runtest_setup
xdist プラグインでプラグイン フックを実行するのに問題があります。-n オプションを指定せずに実行しますが、そのオプションを指定するとすぐにフックが実行されません。
私pytest_runtest_makereport
はいつも働いています。何か案は?
python - 各 pytest-xdist プロセスでセットアップを実行する方法
テスト ランナーが開始したら、いくつかの設定を行います (sys.path の調整、環境変数の追加、グローバル フィクスチャの開始)。生成された各 xdist プロセスでこれらの変更を行うには、どのフックを使用できますか?
通常の pytest フックをいくつかオーバーロードしてみましたが、それらはサブプロセスが起動される前に実行されます。
pytest - xdist と並行して実行する前に pytest を事前に構成する
テストを並行して実行するために、xdist と組み合わせて pytest を使い始めました。私は私のコンテスト.py テスト実行に必要ないくつかのテスト データ ディレクトリ (タイム スタンプ付き) とファイルを作成するための構成フックがあります。xdist を使用するまで、すべて正常に動作します。pytest_configure が最初に実行され、次にプロセスごとに再度実行され、次のようになります。
そして、最終的に n+1 個のディレクトリが作成されます (数秒先)。配布する前に事前にテスト実行を構成する方法はありますか?
編集:ここで私の問題の解決策を見つけたかもしれません。私はまだそれをテストする必要があります。
python - クラスごとのpytest分散テストxdist
現在、次のようにテストを実行しています。
これは、3 つの python プロセスにあるすべての pytest テスト関数を分散します。
xdist/pytest にクラスごとにジョブを配布してもらいたい:
これを行うために pytest/xdist に渡すことができるフラグはありますか?
python - pytest xdist テストは同じ構成にログを記録できますか?
私は pytest と xdist プラグインを使用して、大規模なテスト スイートを実行しています。これらのテストの実行には数時間かかることがあるため、実行中に特定の情報を確認したいと考えています。見たい項目は、テストが失敗したときのエラー、まだテストがいくつ残っているかなどです。これを行うには、詳細なエラーが 1 つのファイルに送られ、残っているテストの数などの基本的な情報が別のファイルに送られるように設定したいと思います。これを可能にするpytestプラグイン、またはこれを行うために内部pytestロガーを接続する方法はありますか? 御時間ありがとうございます。
pytest - xdistでpytestを使用するときに出力を印刷する方法
テストを実行するために py.test を使用しています。テストを並行して実行するために pytest-xdist と一緒に使用しています。テストで print ステートメントの出力を確認したいと考えています。
私は持っています:Ubuntu 15.10、Python 2.7.10、pytest-2.9.1、pluggy-0.3.1。
これが私のテストファイルです:
py.testを実行すると、何も出力されません。これは当然のことです。デフォルトでは、py.test は出力をキャプチャします。
py.test -sを実行すると、 test_aとtest_bが出力されます。
py.test -s -n2を実行すると、何も出力されません。-n2の使用中に print ステートメントを機能させるにはどうすればよいですか?
出力とこのバグレポートをキャプチャせずに、すでにpytest + xdistを読みました。
python - xdist によって作成されたサブプロセスでセットアップを実行します
プロセスがテストの実行を開始する前に、xdist によって作成された各プロセス内でセットアップ (ソケットの作成など) を実行する必要があります。xdist が提供するフックを見てきましたが、両方pytest_configure_node()
ともpytest_testnodeready()
、サブプロセスではなくメイン プロセスによって実行されているようです。これを行う方法はありますか?ありがとう。
python - pytestスコープ関数がブラウザの2つのインスタンスを作成しない
xdist
その前に、各テストを独立させようとする前に、2つのテストを並行して実行しようとしています。
ここでブラウザを設定します。
そして、ここに私が実行している2つのテストがあります
しかし、テストを実行すると、
ご覧のとおり、同じブラウザ インスタンスを使用しています。2つのブラウザインスタンスを作成するscope
ように設定すると思いましたか?function
上記が機能する場合、最終目標は、おそらく使用するようにテストを並行して実行することpy.test -d --tx 3*popen//python=python2.7 test.py -s
です? したがって、同時に 2 つのブラウザが起動します。