10 step automation testing process
自動化テストプロセス:プロジェクトで自動化テストを開始する方法を学びます(ステップバイステップガイド)
多くの組織では、品質が最優先事項です。あなたがそのような組織にいることが判明し、それでも正式なテスト自動化が行われていない場合、あなたはそれを発足させる人である可能性があります。
それはあなたの組織がより短い時間でより高品質の製品を構築するのを助け、同様にそれを早期に販売することができます。
=> ‘のこの3番目の部分では テスト自動化チュートリアルシリーズ ’、テスト自動化プロセスとは何かについて説明します 組織でテスト自動化を開始する方法 。どのステップを最初に実行するのか、そしてその理由を理解することは重要です。
これらの手順に固執することで、シームレスな方法で自動化を導入し、自動化の失敗につながる一般的な落とし穴を回避することができます。
学習内容:
- テスト自動化を開始するための10ステップの自動化テストプロセス
- ステップ1。経営陣を説得する
- ステップ2。自動化ツールの専門家を探す
- ステップ3。自動化のための正しいツールの使用
- ステップ4。さまざまなアプリケーションを分析して、自動化に最適なアプリケーションを決定します
- ステップ5。チームのトレーニング
- ステップ#6。テスト自動化フレームワークの作成
- ステップ7。実行計画の作成
- ステップ8。スクリプトを書く
- ステップ9。報告
- ステップ#10。スクリプトのメンテナンス
- 結論
- 推奨読書
テスト自動化を開始するための10ステップの自動化テストプロセス
これは、自動化テストの開始に役立つステップバイステップのテスト自動化プロセスとガイドです。
はじめましょう。
ステップ1。経営陣を説得する
組織内でテスト自動化を発見して開始することにどれだけ熱心であっても、管理者がテスト自動化が提供する利点について確信が持てない場合は、何もできません。テストの自動化には費用がかかるというのは普遍的な事実です。ツールは高価です( HP QTP / UFT ライセンス費用は1台あたり約8000ドルです)。テスト自動化アーキテクトまたはエンジニアにはコストがかかります(ちなみに、これも高価です)。その後、テスト自動化のメリットはすぐにはわかりません。スクリプトが準備され、テストされるまで2〜3か月待つ必要があります。これにより、アプリケーションをテストするために確実に実行できます。
これらの費用の苦痛に耐えるように経営陣を説得する必要があります。また、テストの自動化が結果を出し始める前に、辛抱強くなるように経営陣に伝える必要があります。
では、彼らはどのように納得するのでしょうか? あなたは彼らに費用便益分析を伝えなければなりません。あなたが質問できるように、私たちがテストするのにどれくらいの時間がかかるか BAT(ビルド受け入れテスト) 私たちのアプリケーションの?次に、1日かかる場合は、テスト自動化を使用して2時間以内にテストできると言えます。コストは、ツールを購入し、リソースをトレーニングして、結果を2か月待つ必要があることです。 2か月後、2時間でBATを実行できるようになります。これにより、新しいビルドがリリースされるたびに、毎回6時間の手動テストを節約できます。ビルドが月に4回リリースされる場合。 24時間または3日間の手動テストを節約できます。
これは、手動テスターが何もしないという意味ではありません。彼らはこれらの6時間のテストを使用して、アプリケーションの新しく重要な機能に焦点を合わせ、自動化によってリグレッションの問題を処理します。この設定により、製品の品質が全体的に12倍向上します。
あなたの経営陣が彼らの製品の品質にお金を払う気がないなら、誰も彼らにそうすることを強制することはできません。クライアントが製品について不満を言うとき、彼らは自動的に学びます。品質はすべてに影響します。それはあなたの売り上げに影響を与え、クライアントとの関係に影響を与え、消費者の心の中であなたの認識に影響を与えます。そのため、インテリジェントな管理は常に製品の品質に投資してきました。
したがって、経営陣を説得するために覚えておくべき5つのポイント:
- テスト自動化の利点について詳しく説明します。
- テストの自動化には費用がかかり、最初は費用がかかりますが、スクリプトを準備して実行を開始すると、費用が削減されることを伝えます。
- テスト自動化の結果を期待する前に、約3か月待つ必要があることを伝えます。
- テストの自動化は手動テスターに取って代わるものではなく、同時により多くのテストを行えるようになるため、手動テスターを支援することであることを伝えます。
- テストの自動化は、より短い時間でより多くのテストを行うことを意味するものではありません。それは同時により多くのテストを意味します。 (手動テスターがBATを8時間でテストしていた場合、自動化の存在下で、同じ8時間でBATに加えて、新しい機能に加えて他の多くのものをテストできます。)
管理者を説得することは、組織にテスト自動化を導入するための最初の最も重要なステップであることを忘れないでください。彼らが納得していない場合は、テストの自動化を忘れるか、組織を変更してください。 :)
ステップ2。自動化ツールの専門家を探す
自動化の専門家には2種類あります。
- オートメーションアーキテクト
- オートメーションエンジニア
オートメーションアーキテクトは珍しい品種です。それらは見つけるのが難しく、非常に高価で、自動化プロジェクトの成功に非常に必要です。これらの人々は通常、自動化フレームワークを構築する責任があります。 (自動化フレームワークについては、別の記事で詳しく説明します)
オートメーションアーキテクト さまざまな種類のツールの経験があり、通常、各ツールの長所と短所を知っています。 また、アプリケーションとそのアプリケーションで使用されているテクノロジーを注意深く分析することにより、管理者が自動化に適したツールを選択するのに役立ちます。 。また、フレームワークの構築、命名規則の設計、およびスクリプトのルールの作成にも役立ちます。また、最初に自動化するテストケースの選択にも役立ちます。
自動化アーキテクトのポストに適したリソースを見つけることができれば、半分の作業は組織内の自動化を成功させるために行われます。
オートメーションエンジニア 一方、手動のテストケースを自動化されたスクリプトに変換するのは人々です。彼らは自動化アーキテクトの下で働き、 スクリプトの作成と実行を担当 。
一部の企業は外部から自動化エンジニアを採用し、一部の企業は既存の手動テスターをトレーニングして社内で採用しています。いずれにせよ、リソースはプログラミングに優れている必要があります。彼/彼女は特にオブジェクト指向プログラミングについて知っている必要があります。 1人の自動化アーキテクトと2人の自動化エンジニアの組み合わせは、ほとんどの製品に最適です。
ステップ3。自動化のための正しいツールの使用
この点はそれ自身の記事に値します(そして私はそれについて1つ書きます)。これは、自動化を開始するプロセスのもう1つの難しいステップです。 市場にはさまざまなツールがありますが、アプリケーションに最適なツールを選択する必要があります。
簡潔にするために、ツールを選択する際の最も重要な考慮事項を記述します。ツールの選択プロセスについては、別の記事で詳しく説明します。
適切なツールを選択する際に考慮すべき最も重要なことは次のとおりです。
- ツールはあなたの中になければなりません 予算 。自動化ツールは本当に高価です。したがって、会社はツールを購入するための予算を持っている必要があります。
- ツールはする必要があります サポート技術 アプリケーションで使用されます。アプリケーションがフラッシュまたはSilverlightを使用している場合、ツールはそれをサポートする必要があります。アプリケーションがモバイルで実行されている場合、ツールはモバイルでスクリプトを実行できる必要があります。アプリケーションで使用されるすべてのテクノロジーをサポートする単一のツールを購入することも、テクノロジーごとに個別のツールを購入することもできます。 例えば 、Webアプリケーションにセレンを使用できます。 ロボット あなたのAndroidアプリケーションと MSコード化されたUI デスクトップアプリケーション用。決定がどうであれ、これはあなたの予算内にあるべきです。
- あなたは必要なものを持っている必要があります 熟練したリソース このツールを使用したり、短時間でそのツールを習得したりできる人。 例えば 、QTPの経験しか持たない自動化アーキテクトを雇い、MS Coded UIのライセンスを購入している場合、リソースはそれを快適に使用できない可能性があります。ツールは良い車のようなものですが、これらの良い車を運転するには、良いドライバーも必要です。
- ツールには、 優れたレポートメカニズム 各実行後に利害関係者に結果を表示します。
適切なツールを選択する際には、他にもさまざまな要因があります。それらについては、別の記事で説明します。
最新のトップ自動化ツールについては、このガイドをお読みください。
ステップ4。さまざまなアプリケーションを分析して、自動化に最適なアプリケーションを決定します
組織が5つのアプリケーションに取り組んでいる場合、それぞれを自動化する必要はありません。自動化するアプリケーションを選択する際には、さまざまな要素を確認する必要があります。
自動化する必要のあるアプリケーションには、次の要素が必要です。
- アプリケーションは、開発の初期段階にあるべきではありません。 (アプリケーションには、安定していて手動テスターによってテストされるすべてまたは一部のモジュールが含まれている必要があります)
- アプリケーションのUIは安定している必要があります。 (UIは頻繁に変更してはなりません)
- このアプリケーションの手動テストケースは、書面で作成する必要があります。
自動化の主な目標は、あるビルドでアプリケーションにバグがない場合、次のビルドでもバグがないことを確認することです。手動テスト担当者は、回帰の問題を見つけるのに時間を無駄にしないでください。これらの問題は自動化で特定する必要があります。
したがって、リグレッションを見つけるには、すでに安定していて、いくつかのテストケースが記述されているアプリケーションが必要です。自動化チームは、これらのテストケースをスクリプトに変換し、ビルドごとにこれらのスクリプトを実行して、回帰が表示されないようにします。
また、読んでください => 自動化テスト用の正しいテストケースを選択する方法
ステップ5。チームのトレーニング
ツールの選択とリソースの採用の後、次のステップは論理的にリソースのトレーニングです。
手動テスターを自動化エンジニアに変える場合は、自動化の用語と概念についてトレーニングを受ける必要があります。自動化アーキテクトを外部から採用する場合は、テストする製品、手動テストプロセス、および管理者が期待していることについての知識を得る必要があります。
リソースが最終的に成功する自動化戦略を思い付くまで、さまざまなことを試す時間を与えてください。組織がすでに使用しているツールでそれらをトレーニングします バグ追跡ソフトウェア そして 要件管理ソフトウェア 。
手動テスター、開発者、自動化チーム間の優れたトレーニングと強力なコミュニケーションが本当に必要です。
ステップ#6。テスト自動化フレームワークの作成
自動化アーキテクトの最大のタスクは、長期的な自動テストをサポートする自動化フレームワークを考案することです。
自動化フレームワークは、基本的に一連のルールであり、メンテナンスの量を最小限に抑える方法でスクリプトを作成するための慎重な計画です。アプリケーションで何か変更があった場合、その変更に対処するためにスクリプトを更新する必要はほとんどありません。それが自動化フレームワークの美しさです。
自動化フレームワークには、線形、モジュラー、データ駆動型、キーワード駆動型、ハイブリッドの5種類があります。これらのフレームワークはすべて、このシリーズの別の記事の例で詳細に説明されます。
次のチュートリアルで、自動化フレームワークの詳細を読み始めることもできます。
=> テスト自動化のためのフレームワークが必要なのはなぜですか?
=> QTPフレームワークの例
=> Seleniumフレームワークの例
ステップ7。実行計画の作成
実行プランには、スクリプトを実行する環境の選択が含まれます。環境には、OS、ブラウザ、およびさまざまなハードウェア構成が含まれます。
例えば 、テストケースでChrome、Firefox、IEの3つのブラウザでウェブサイトをチェックする必要がある場合、自動化チームは各ブラウザで実行できるようにスクリプトを作成します。
自動化チームが事前に知っていればスクリプトで処理されるため、これはスクリプトを作成する前に必ず通知する必要があります。実行計画には、誰がスクリプトを実行するかについても記載する必要があります。通常、自動化チームはビルドごとにスクリプトを実行しますが、会社によって異なります。一部のマネージャーは、開発者にリリース前にビルドでこれらのスクリプトを実行するように依頼し、一部の企業は実行のためだけに専用のリソースを採用しています。一部の企業でさえ、スクリプトを無人モードで実行しています。もちろん、追加のリソースは必要ありません。
ステップ8。スクリプトを書く
フレームワークが設計されると、実行プランがわかり、リソースが新しいツールでトレーニングされます。今がスクリプトの作成を開始する適切なタイミングです。
スクリプトは、適切な命名規則に従って整理された方法で作成する必要があります。コードの損失を防ぐために、ソースコードはソース管理で維持する必要があります。バージョン管理と履歴を維持する必要があります。テストの自動化は、ソフトウェア開発と同じです。スクリプトを作成するときは、プログラミングのベストプラクティスをすべて注意する必要があります。
また、読んでください => 手動テストケースを自動化スクリプトに変換する方法
ステップ9。報告
レポート機能は通常、ツールによって提供されます。ただし、結果を管理者に自動メールで送信するなどのカスタムレポートメカニズムを作成することはできます。
管理者が必要とする場合は、各実行の最後にチャートや表の形式でレポートを作成できます。管理者は常にテストケースの適用範囲について通知を受ける必要があります。つまり、自動化でカバーされている手動テストケースと、残っているテストケースはどれかということです。
ステップ#10。スクリプトのメンテナンス
プログラミングのベストプラクティスに従い、フレームワークが適切であれば、メンテナンスは問題になりません。
メンテナンスは通常、アプリケーションに変更要求がある場合に発生します。完璧な実行を保証するために、その変更に対処するためにスクリプトをすぐに更新する必要があります。
例えば 、スクリプトを介してテキストボックスにテキストを書き込んでいて、このテキストボックスがドロップダウンリストになった場合は、すぐにスクリプトを更新する必要があります。
他の種類の変更には、スクリプトが英語版のアプリケーションで実行されていたことが含まれます。現在、アプリケーションが中国語をサポートする必要があるという変更要求があります。フレームワークを使用すると、中国語での実行をサポートするための労力をほとんどかけずにスクリプトを更新できるはずです。そのため、自動化アーキテクトは高価です。 :)
フレームワークが適切でなく、ベストプラクティスに従わない場合、メンテナンスは悪夢になります。ほとんどの自動化プロジェクトは、スクリプトのメンテナンスが不十分なために失敗します。
結論
この記事では 自動化テストプロセスとは何ですか?組織で自動化テストを開始する方法 最初から最後まで段階的に。これらの手順に従うと、自動化が成功することを願っています。
推奨読書= >> 最高のITプロセス自動化ソフトウェア
独自の記事に値するいくつかの部分(自動化ツールの選択や自動化フレームワークなど)があります。これらについては、この自動化テストチュートリアルシリーズの今後のパートで説明します。
=>その間 すべてのチュートリアルを確認するには、ここをクリックしてください すでにこのシリーズに投稿しています。
私はより広い視野ですべての側面をカバーし、このチュートリアルを書くために私自身の経験を使用しようとしました。
重要なことを見逃したと感じたり、このチュートリアルの一部でもう少し説明が必要な場合は、コメントセクションで質問してください。私はあなたの質問に答えたいです。
qaリードインタビューの質問と回答pdf
推奨読書
- 自動化テストで概念実証(POC)を実装するためのステップバイステップガイド
- 自動化テストとは(テスト自動化を開始するための究極のガイド)
- Sikuli GUI自動化テストツール-ビギナーズガイドパート#2
- 最高のソフトウェアテストツール2021 (QAテスト自動化ツール)
- テスターは自動化のためにテストを超えてグリップを失っていますか?
- 手動および自動化テストの課題
- あなたは手動または自動化テストの専門家ですか?私たちのためにパートタイムで働いてください!
- Androidアプリケーションをテストするための11の最高の自動化ツール(Androidアプリテストツール)