そうでない場合でも、スモークテストは使用されていますか?
8 に答える
ベン図のようなものです。一部の自動テストはスモークテストであり、一部のスモークテストは自動です(コンピュータープログラムによって実行される場合を除きます)。スモークテストは、「煙があるところには通常火がある」という言葉の離陸です(私が正しく思い出せば)。これは、「実際の」(つまり火災)テストの対象となるためにプログラムが合格しなければならない一連の予備テストです。
スモークテストは、テスターが従う手順のリストを持っている限り手動で行うことができますが、これらはコンピュータープログラムで自動化されていません。
スモークテストは今でも使用されています。私が働いたことのある場所では、通常は自動化されています。
自動テストでは、スモーク テスト (浅い、広い) を実行できますが、回帰テストや単体テストなどの他のテストも実行できます。基本的に、自動化されたテストは、繰り返し可能なテストであれば何でもかまいません。
はい、煙試験はまだ使用されています。私は一般的に2つのシナリオを見てきました。1 つ目は、ソフトウェアがより詳細なテストの準備ができているかどうかを判断することです。2 つ目は、IMO より一般的ですが、新しいビルドへの変更によって影響を受けるべきではなかった機能を完全にテストすることを軽視することです。
おそらく、スモークテストが文字通り行われたハードウェアのバックグラウンドを持つ企業でより多くの. 今ではそう呼ぶ人はほとんどいません。通常、これは、より大きな受け入れまたはシステム テスト スイートの、小さいながらも広範なサブセットにすぎません。これらの tet は自動化されており、コードが送信される前、またはソース コード管理に送信されるときに、コードに対して自動的に実行されます。
スモーク テストと自動テストを比較できるかどうかはわかりません。スモーク テストは、ビルドで一連の基本的なテストを実行する方法であり、すべての基本的な機能をカバーしますが、詳細には触れません。目的は、ビルドをより詳細なテストに使用できるかどうかを判断することです。これは、開発者ビルドでも迅速に実行できる一連のステップであり、ビルドで行われる重要な変更またはコアの変更による問題があるかどうかを判断します。スモーク テストは「テスト計画」の 1 つですが、すべてのビルドで実行されるものです。
自動テストは Smoke テストに固有のものではありませんが、Smoke テストにも適用できます。これは、テスターが時間を節約するために常に行う冗長または反復的なステップを「自動化」するために行われます。それが自動化の主な目的です。これにより、テスターは他のテストにより多くの時間を費やすことができます。
本物の脳によるテストに取って代わることも、すべてを自動化することもできません。これは、実施中のテスト プロセスを補完するアクティビティであり、テスト プロセスを置き換えるものではありません。
スモーク テストはすべてのビルドで実行される可能性があるため、自動化する価値があります。手動でのスモーク テストの実行に 4 時間かかり、自動化後に 1 時間かかる場合、3 工数 * ビルド数の労力を節約したことになります。
AutoIT や SilkTest など、自動化テスト用のツールがいくつか市場に出回っています。
非常に簡単に言えば、スモーク テストは自動化できると言えますが、自動化されたテストが常にスモーク テストであるとは限りません。
はい、スモーク テストは、アプリケーション/ソフトウェアをテストする一般的な方法です。
通常、スモークテストは自動化されていないと思います。私の経験では、スモーク テストは実際には、後続のテストを実際に実行できること、および起動コードやメニュー エントリなどの基本的な部分が壊れていないことを確認するための基本的なサニティ テストにすぎません。これは通常、人によって手動で行われます。自動化できると思いますが、通常は新しい機能の追加が必要になるため、自動化されたテストも変更する必要があり、自動化されたテストが正常であることを確認するために人が必要になるという同じ問題が引き続き発生します。新しい機能を適切にテストするために変更されました。対照的に、自動化されたテスト (単体テストなど) は回帰テスト スイートを表し、リリースごとにあまり変更されない確立された機能をテストするために作成されますが、もちろん、新しい機能もカバーするために単体テストを追加します。
「スモークテスト」についての私の理解は、ウィキペディアの記事とは異なります。スモークテストは、アプリを開いて基本機能をテストし、アプリが正しく表示され、基本を実行していることを確認する開発者であることを理解しています。だから私はいつもそれが自動化されたものではなく、手動のプロセスだと思っていました。
テスト自動化スイートには、スモーク テスト、受け入れテスト、夜間ビルドなどのさまざまなレベルが含まれています。各レベルでどのテストケースを実行する必要があるかを決定するのはテスター次第です。各テスト ケースには、実行するレベルに応じて番号が付けられています。自動化された 2 つのテスト ケースがあり、レベルを示すためにそれぞれ 1 と 2 の番号が付けられており、構成ファイルでテスト レベルを 2 として定義すると、2 番目のテスト ケースのみが実行され、結果が得られます。通常、スモーク テストは受け入れテストに比べてテスト ケースの数が少なくなります。
スモーク テストは自動化できますが、すべての自動テストがスモーク テストであるとは限りません。