-1

複数の環境の複数のブラウザーでテストする必要がある Web アプリケーションがあります (つまり、Chrome、Firefox、および Windows と Linux* の両方の Internet Explorer* (* Internet Explorer は明らかな例外))。

テストは JBehave、Selenium、および SerenityBDD (Thucydides) を使用して Java で記述されています。これらのテストは、基礎となる REST API を実行し、UI を使用してオブジェクトを正常に作成および削除できるかどうかをテストします。

私は Selenium Grid を使用しており、並列ノードでテストを実行したいと考えています。ただし、懸念されるのは、テストが基盤となる REST API を実行するため、競合が発生する可能性があることです。

テストを実行する Jenkins ジョブ構成内のパラメーターとしてパラメーターをテストに渡すことは可能ですか? テストが実行されているノードに依存するテストにわずかな違いがありますか? (たとえば、Chrome では「MYOBJECT-CHROME」という名前のオブジェクトが作成されますが、Firefox では「MYOBJECT-FIREFOX」という名前のオブジェクトが作成されます。これは、REST API の競合を回避できることを意味しますか?)

4

1 に答える 1

1

テスト対象のソフトウェア (SUT) がマルチスレッド REST API 要求を許可する場合、心配する必要はありません。

競合を回避できることを意味しますか?

テストの同時リクエストはフィクスチャとして設定する必要があります。つまり、すべてのアトミック テストは、必要なテスト データを設定/破棄するか、テスト対象のソフトウェア (SUT) の状態を返す必要があります。ここでの良い候補はPrebuilt フィクスチャです。Jenkins のステップとして追加できるようになり、これらすべてのテスト オブジェクトを作成するオーバーヘッドを削減できます。

build をパラメーター化する必要がある場合は、BDD の スイート@tagsを使用して、実行するテストのセットを定義できます。

于 2015-09-15T05:34:01.933 に答える