問題タブ [parallel-testing]

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 投票する
1 に答える
663 参照

ruby-on-rails - Rails アプリを並列テストするための JRuby フレンドリーな方法

JRuby を使用して動作する Ruby on Rails アプリ (rspec、cucumber を使用) で大規模なテスト スイートを並列化するシステムを探しています。実際、Cucumber はそれほど悪くはありませんが、完全な rSpec スイートは現在、実行に 20 分近くかかります。

私が見つけたシステム (hydra、parallel-test) は、フォークを使用しているように見えますが、これは JRuby 環境にとって理想的なソリューションではありません。

0 投票する
8 に答える
8884 参照

maven-2 - Maven Surefire: 並列テストの実行をフォークできません

Maven Surefire を使用すると、並列テストの実行をフォークできません。つまり、私のテスト ケースはそれぞれ別の JVM で実行する必要があるため、フォークします。さらに、テスト ケースを並行して実行したいと考えています。最初の部分は問題なく動作しています。各テスト ケースを独自の JVM で実行できます。ただし、2番目の部分はまだ私にとって挑戦的です. テストケースの並列実行を機能させることができませんでした。私のプラグイン宣言は次のようになります。

メソッドとクラスの両方を試しましたが、並列化は見られません。依存関係宣言で示されているように、私の JUnit バージョンは 4.7 です。

どんな助けでも大いに役に立ちます。

グレゴワール。

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

selenium - データ駆動型テスト ケースを使用した MBUnit/Gallio による並列テスト

私は、RemoteWebDriverSelenium Grid を使用して Selenium 2 について多くのことを調べてきました。現時点では、属性Test()を使用してテストが生成されています。[Test]

クラスにTestCriteria情報を入力し、このデータをテストに入力する方法を「制御」する方法として、Selenium WebDriver の「ページ オブジェクト デザイン パターン」を使用します。

したがって、次のような単純な基準オブジェクトがあります。

次に、この情報を LoginPage オブジェクトで使用します。

さて、この種の構造を使用して、テスト データ、Credentials オブジェクト、他のページで入力する必要があるデータなどを取得したら、テストで適切なメソッド チェーンを作成できます。

}

これで問題ありませんが、XML から逆シリアル化できるシリアル化された TestData オブジェクトからこのテスト データをロードしたい場合はどうすればよいでしょうか。

を使用することにも興味がRemoteWebDriverありますが、これは既に使用していますが、単に を使用するのに比べてまだIWebDriver driver = new FireFoxDriver();不安定ですが、これらの問題を無視して、 TESTCASE を複数回実行したいと思います...同時に。これにより、並列テストの問題が発生します。

MBUnit は Gallio の一部であるこれを処理できることを理解しています。Nunit の拡張である PUnit も調べましたが、まだ長い道のりがあります。だから私はMbUnitに固執することにしました。

これにより、属性で TestFixtures を実行できるようになります[Parallelizable]。したがって、プロジェクトをコンパイルし、プロジェクト dll を Gallio TestRunner GUI にロードすると、4 つのテスト ケースを同時に実行できます。これにより、各テストを同時に実行する 4 つのブラウザーが開き、サイトに負荷をかけることもできます。 4 つのテストがすべて実行されている間。(明らかに、これは、Selenium Grid で Selenium RemoteWebDriver を使用して、複数のマシンで数百のブラウザーを実行するために増加します。

[Parallelizable]xml シリアル化されたオブジェクトのコレクションをロードし、テスト フィクスチャの上部に属性を追加して、ロード後にすべてを同時に実行できる新しい TestFixture オブジェクトを生成する方法を知っている人はいますか1 - 10たとえば、C:\TestCase ディレクトリの .xml ファイル?

私の考えは、これらをすべてロードしてから、メインのセレン グリッド ハブに接続されて実行されている 1 ~ 5 つの Selenium ノードでブラウザ セッションを Selenium Grid に処理させることです。

TestCase .xml からロードされる内容に応じて、特定のテスト条件をテスト属性に設定する機能をTest Fixture含むを生成できるフレームワークが見つからない場合、Selenium Grid を実際に活用するのが困難です。[SetUp] [TearDown] [Test]ファイル。

たとえば、TestCase .xml ファイルに失敗した要素が含まれている場合、この .xml ファイルをロードして TestFixture の [Test] に属性を設定する方法、またはテストの TestCase .xml Description を[Test(Description = "")]属性にマップする方法を教えてください。実行時間。

Selenium Webdriver の機能、ページ オブジェクトのデザイン パターン、EventFiringWebDriverスクリーンショットの Selenium 機能については既に知っています。

いくつかの XML シリアル化された TestCaseData をロードし、これらがロードされた後に新しい TestFixture オブジェクトを生成する機能を利用するにはどうすればよいですか?

理想的には、各 TestFixture の [SetUp] をセットアップする必要があります。IWebDriverこれは、特定の URL が TestCase.xml ファイルに含まれるものに応じて異なるためです。たとえば、このテストは UAT 環境、テスト環境、本番前の環境で実行することです。テストを実行する前にこれをセットアップする必要があります。

複数のブラウザを実行するSelenium Grid機能を利用するために、これらのテストフィクスチャを並行して実行する機能を備えたSelenium Grid / Selenium WebDriverでこれらの主な概念を使用する基本的な例はありますか?

だから私は疑似コードで探しているもの。

多分私はこのデザインを間違った方法で行っています。これらを並列化するための最良の方法について何か提案はありますか?

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

selenium - PythonでのSelenium Parallel Browserのテスト

私はしばらくの間、Selenium を使用していくつかのテストを行っていますが、それは素晴らしいものでした。これで、IE、Firefox、および Google Chrome で同時に実行するテスト ケースが作成されました。私はそれを個別に実行しましたが、問題なく実行されましたが、スクリプトを変更してすべて一緒に実行する方法があるかどうか疑問に思っていました.

ハブと 3 つのリモート コントロール (Firefox ポート = 5556、IE ポート = 5557、Chrome ポート = 5558) を使用してグリッドを既にセットアップしました。スクリプトに関しては、3 人のダイバーをセットアップします。

次に、3 つの異なるメソッドを作成し、各ドライバーで実行しました。まだテストしていませんが、疑問に思っていました:これを行う効率的な方法はありますか?

前もって感謝します!

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

python - セレン+ノーズによる並行テスト

マルチプロセスプラグインと並行して機能テストを実行しようとしていますが、これによりランダムな TimeoutException が発生することがあります

私のテストは非常に単純です。それぞれのテストは Web ページに移動し、特定の要素が存在するかどうかを確認するだけです。

誰かが原因を知っていますか?

ありがとう

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

webdriver - nspec は並列テストを実行できますか?

C# 用の Rspec スタイルのツールを探していて、Nspec を見つけました。

Saucelabds を介して Webdriver テストに使用する予定であるため、テストを並行して実行できることが重要な考慮事項です。

これはNspecで実行できますか? 現在、私は MBunit を使用していますが、これは並列テストを強力にサポートしており、これもサポートする BDD アプローチのみを実際に検討することができます。

Specflow は並行して実行できると思いますが、Cucumber スタイルのツールではなく Rspec スタイルのツールを探しています

ありがとう

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

junit - ページオブジェクトモデルを使用しながらJunitテストを並行して実行する方法は?

貴重な情報を共有してください。これについて詳しく説明しているドキュメントや標準の参考文献をインターネット上で見たことがありません。TestNG 関連の情報 (ページ オブジェクト モデルあり) をお持ちでしたら、よろしくお願いします。

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

ruby-on-rails - rspec で並列テスト実行が無期限にハングする

capybara-webkit ドライバーで parallel_tests を使用してスペックを実行しています。次のルビー環境があります。

以下を含むgemsetでrvmを実行します(関連性のためにカピバラ、レール、rspec、およびparallel_testsのために切り捨てられています。私のgemsetのより大きな帯が役立つ場合は、お知らせください):

を使用して単一のプロセスでテスト スーツを実行するとrake spec、すべてのテストが実行されて完了します。ただし、parallel_tests を実行すると、次のことが起こります。

その後、プロセスは最終的に戻ってきます。

ただし、最初の 6 つのプロセスが戻った後、parallel_spec は無期限にハングし、終了せず、残りの 2 つのプロセスの出力を出力しません。

私は、2.4 GHz Intel i7 を搭載した OS X Lion を実行している MacBook Pro を使用しています。

だから私の質問は簡単です:なぜそれがぶら下がっているのですか?なぜそれがぶら下がっているのかをデバッグするにはどうすればよいですか?

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

ruby-on-rails - parallel_tests gem はテスト スイートを順番に実行しますか?

parallel_tests のソースを読んでいますが、まだ理解できていないので、本題に飛び込んでここで質問しようと思いました。

parallel_tests gem は、sweet 内のすべてのテストを同時に実行しますか、それとも順番に実行しますか? (複数のテストを同時に実行することは可能ですか)

並列テストを実行すると、次のようになります。

  1. 私のすべてのテストを見つける
  2. それらを偶数の山に分割します(各プロセッサに1つ)
  3. 各テストの山を順番に実行します

rake parallel:test (75 分) と rake test (85 分) を 4 プロセッサで実行した場合の時間差はわずかであるため、これについては疑問に思っています。

並列テストの出力は、一連のテストを順番に実行しているように見えます。

私の出力は次のようになります。

すべてのプロセッサが見つかったことを示すことから始めます。

次に、テストの各サブセットを順番に実行するようです:

それで、これは私の出力のトリックですか、それとも実際に一連のテストを次々と実行しているのでしょうか。時間が改善されればもっと良くなると思っていましたが、これは、テストを実行するために並列化する必要がある他のものに大きな影響を与えます。