問題タブ [continuous-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.
continuous-integration - 継続的インテグレーションにおける非機能テスト ケースのテスト戦略
大規模システムの開発では、機能以外の要件が最も重要であることが多く、開発時間の大部分を実装するのに時間がかかります。機能以外のテストはコストが高く、実行に時間がかかることがよくあります。機能以外のテストは頻繁に実行できません。通常の継続的インテグレーション システム サイクルでは、実行に時間がかかりすぎる可能性があるため、安定性テストには 2 週間かかる可能性があります。 2時間ごとに作成されます
testing - 本番環境を継続的にテストすることが理にかなっている場合
アプリをカバーする単体テスト、統合テスト、e2e テストがたくさんあるとします。これらを prod に対して継続的に (たとえば 10 分ごとに) 実行することは理にかなっていますか?
いいえと考えています。理由は次のとおりです。私のテストは、すべての製品がデプロイされた後に既に実行されています。それらが合格し、その後コードが変更されていない場合は、引き続き合格する必要があります。したがって、その後それらをテストしても意味がありません。
本当に継続的にテストしたいのは、インフラストラクチャです。まだ稼働していますか? この場合、API 統合テストを 10 分ごとに実行して、API がまだ機能しているかどうかを確認することは理にかなっています。そのため、私はテスト スイートのサブセットを扱っています。これは、インフラストラクチャの可用性 (統合 + e2e) と単一ビットのコード (単体テスト) をテストするものです。実際には、デプロイ前/デプロイ後のテストに使用されるスイートとは異なり、製品稼働時間をテストする別のテスト スイートを用意することになりますか?
continuous-integration - 継続的インテグレーションと継続的デリバリーの使用を開始したばかりのレガシー プロジェクトに使用するテストの種類
12 のレガシー プロジェクトがあります。1 つは 9 年前にプログラムされた古い Visual Basic アプリケーション、もう 1 つは C# (.NET) アプリケーション、2 つの Java プロジェクト、および OS on です。
各プロジェクトのリポジトリのクリーニングと作成が完了しました (そのうちのいくつかは、別のコンピューターにある単なるフォルダーでした...)。
多くの便利なプラグインを使用して Jenkins を構成し、継続的インテグレーションと継続的デリバリーの 2 冊の本を購入しましたが、まだ完全には読んでいません。
プロジェクトの展開パイプラインを定義しました。リポジトリへのコミット後にすべてが自動的にコンパイルされ、コードの分析が自動的に行われます (循環的複雑度など)。
ただし、プロジェクトに使用できるテスト (簡単に追加できる) があるかどうかを知りたいです。単体テストについては知っていますが、これらのプロジェクトの単体テストを作成するには時間がかかりすぎます (可能であれば)。
追加できる他の種類のテストや、パイプラインに追加できるその他の有用なものはありますか?
一部のプログラムでは、インストーラーが自動的に生成されます。
また、パイプラインの最後には、バイナリ (インストーラー) を apache サーバーのパブリック フォルダーに移動する手動の手順があり、社内の人々は最後の安定したバイナリを簡単に取得できます (ここでの安定は、手動でインストールしたアプリケーションであり、テスト (Exploratory test と呼ばれていると思います) を実行し、何も問題がなければ、安定版リリースとして宣伝します)。