0

2 人の開発者が取り組んでいる開発から 3 か月のアプリケーションがあります。この Web サイトは比較的小さく、3 分の 1 しか完了していませんが、テストはかなり包括的です。

開発マシンで Protractor を実行すると、シリアルで実行する場合は 60 分かかり、2 つの同時セッションで分割して実行する場合は 40 分未満です。

2 つの同時セッションで 6 つの互換性を持つ BrowserStack に対して Protractor を実行すると、4 時間もかかりません。

完成品のこれらのテスト時間 (つまり、4 時間 + 200%) を推定すると、総テスト時間は約 12 時間になります。これは travis-ci.com の 120 分の制限を超えており、Browserstack で月額 999 ドルに達しています。これは、変更 (バグ修正を含む) が公開されるまでにせいぜい 12 時間かかることも意味します。

他の人も同じ問題に遭遇しますか?もしそうなら、彼らはどのように解決しますか?

4

2 に答える 2

0

私の意見では、テスト戦略を変更して、サニティスイートを実行するだけで新しい機能/バグのリリースを開始するか、最も重要なプラットフォームをほとんど選択してテスト全体を実行してリリースすることができます. これが機能をリリースする理想的な方法ではないことは承知していますが、少なくとも、先に進むためのかなりの自信が得られます。

2 番目のオプションは、CI ツールで複数のジョブを使用して、さまざまなプラットフォームでテストを実行します。財政的な制限がある場合は、ローカルの CI ツールをセットアップしましょう。おそらくあなたはジェンキンスと一緒に行くことができます。

于 2015-03-11T17:47:54.853 に答える
0

この種の CI 実装 (TFS + Jenkins) が完成しました。また、Browserstack も使用しており、最後のプロジェクトで約 150 の e2e テストがあります。また、これらのテストの実行にはかなりの時間がかかります。そのため、これらのテストをコミットごとに実行するのではなく、毎晩のジョブとして毎日実行することにしました。午前中は、結果と外観を確認して、問題が発生したかどうか、またはビルドが失敗した理由を確認できます。最も安いプランを使用し、4 つの異なる構成ファイル (chrome/safari/firefox/iOS) があり、各構成ファイルには 4 つのブラウザー/プラットフォーム設定があります。実際には少し注意が必要です。最も安いブラウザスタック プランを使用している場合でも、4 つのテストを並行して問題なく実行できます。

ところで、Git + Bitbucket + Babmoo を使用しましたが、TFS + Jenkins よりもはるかにユーザー フレンドリーでした。

于 2015-03-12T20:47:41.057 に答える