step step guide implement proof concept automation testing
自動化テストで概念実証(POC)を実装する方法は?
組織ごとに異なります テストプロセス および手順。手動テストは重要でかけがえのないものですが、自動化はスピードを上げています。
自動化テストの紹介 組織にとっては課題であり、次の点によって、それが必要かどうかが決まります。
#1 。 プロジェクトの期間: 短期または長期–長期プロジェクトは自動化の良い候補です
#二。 それぞれでどのくらいの回帰が行われますか テストサイクル ? - 自動化により反復的で時間のかかる回帰テストが行われるプロジェクトでは、全体的なテスト時間が短縮され、完全なカバレッジが保証されます。
#3。 アプリケーションの安定性: 頻繁な変更の影響を受けにくいアプリケーションは、自動化を検討する必要があります。 GUI /機能が変化し続ける安定していない製品、要素またはページ上のXPathが変化し続ける製品は、安定するまで自動化しないでください。
負荷テストとパフォーマンステストとストレステスト
#4。 プロジェクトデータは安全ですか?それをテストするには、いくつかの複雑な手順が必要ですか? - この場合、手動テストを行うのが最善です。
#5。 しますか 組織には自動化の予算がありますか? – 自動化により、自動化ツールのコスト、リソースコスト、フレームワークの開発、自動化テストスクリプトの作成/保守に必要な時間など、組織の追加費用が増加します。
自動化により、テストの欠落や一部のテスト結果を当然のことと見なすことは決してありません。それは、同じものがテストされるたびに、与えられたモジュールの100%のカバレッジを保証します。自動化は、複数のブラウザやプラットフォームで同じテストを複数回実行するのにも役立ちます。
次の図は、自動化テストのプロセスを理解するのに役立ちます
技術テストの観点から、 QAチームは理解する必要があります 自動化ツールに関する次の側面:
- プラットフォームとOSのテストマトリックス
- データ駆動型機能
- レポート機能とレポートの移植性
- 簡単なデバッグとロギング
- サポートされているバージョン管理
- 拡張可能でカスタマイズ可能(Ant、TestNGなどの他のツールと統合可能)
- 継続的インテグレーション。
- 電子メール通知(テストが成功/失敗/またはネットワーク障害の場合に受信されるカスタム電子メールメッセージ)
- クロスブラウザーテストと複数のプラットフォームテストが必要な場合は、分散テスト環境がサポートされているかどうか。
学習内容:
正しい自動化ツールの選択:
#1。 テスト対象のアプリケーションは、Webアプリケーションまたはデスクトップアプリケーションです。
#二。 オープンソースツールと有料ツールの選択。
#3。 ツールは、アプリケーションのテスト要件を満たす必要があります
#4。 ツールの使用–ツールの使用と学習に関するチームの専門知識と快適さのレベル
#5。 レポートをサポートしていますか–他に利用できるレポートのオプションがない場合(オープンソースまたは有料)。はいの場合、プレゼンテーションやコンテンツの観点から正しいデータを伝達するという点でどれほど優れているか。
また読む => 最適な自動化ツールの選択に関するAtoZガイド
文字列配列javaの作り方
さらに、ツールの評価には次のものが含まれます。
自動化ツールを選択する際には、それがアプリケーションのGUI実装でサポートされているかどうかを検討することが非常に重要です。
- GUIは、従来のHTML、AJAX、またはその他のWeb開発ツールキットを使用して実装されます
- GUIには、ビデオ、画像、または多くの書かれたコンテンツが含まれていますか?
- インタラクティブまたは情報提供のみ
- テストが必要なブラウザ 。
ツールがプロジェクトのテスト要件を本当に満たしているかどうかを理解するには、上記の点でツールを評価することが重要です。
自動化に関する概念実証の開発:
の実装 自動化テストPOC は、組織にツールを導入するための重要で最も頻繁に使用される方法です。自動化を行うことが決定され、ツールが選択されたら、POCとしてプロトタイプを作成し、それを経営陣に提示して、リアルタイムの使用法と利点を紹介します。
そうするために:
1) テストケースを決定する これをPOCで使用します。
二) クライアントが最も興味を持っている分野を選ぶのに役立ちます。
3) 自動化を選択することにより、品質の低下がないことを証明する方法で、手動と自動化を示すことを計画します。
4) 失敗して欠陥を見つける結果となるテストケースを含める-これは、ツールが実際に欠陥を見つけることができることを補強するのに役立ちます
5) 必要に応じて、アサーションと検証ポイントを使用します。
6) 自動化できる領域と自動化できない領域を明確に示します。通常、次の側面は自動化できません。
- ビデオスチーム
- フラッシュコンテンツ(非静的コンテンツ)
- 非静止画像
7) ツールが次の要件を満たしているかどうかを強調表示しますか?
- 目的のアプリケーションのすべての主要機能を自動化できますか
- プロジェクトで必要とされるのと同じブラウザで自動化は可能ですか?
- 自動化はアプリケーション実装の変更を必要としますか? (自動化の場合と同様に、要素識別子が一意であり、ページが呼び出されるたびに変更されないことが重要です)
POCの結果-通常、次のいずれかになります。
- ツールはプロジェクトの要件を満たしています –詳細を確認します。実装コストなど–価格の交渉が必要、ライセンス料、トレーニングとサポートのコスト、コンサルティング、実装費用などを確定します。オープンソースの場合、ツールはツールの成熟度、利用可能な学習リソース、学習曲線、利用可能なサポートを決定します。ライセンスされたツールとオープンソースツールの両方について、メンテナンスコストも考慮する必要があります。メリットは長期間にわたってのみ実質的であることに留意する必要があります。
- ツールが要件を満たしていません 制限があります–ツールは考慮されなくなりました。
- ツールは部分的に要件を満たしています –再訪して、別の人が要件をよりよく満たしているかどうかを確認します または 自動化が完全に不可能な場合 または 同じツールで他の回避策がある場合。
概念実証を経営陣に提示し、経営陣から承認を得たら、次のステップは、そのツールを使用してパイロットプロジェクトを実装することです。
POCテンプレート:
完璧なPOCテンプレートはありません。通常、次のものが含まれます。
- POCの要件
- POCの候補(すべての自動化ツール)
- プロジェクト要件
- プロジェクト要件に基づくすべてのツールの長所と短所
- POCの結果
参考までに、自動化POCテンプレートをいくつか示します。
=> POCテンプレート1
=> POCテンプレート2
パイロットプロジェクトの実装:
パイロットプロジェクトは次のように定義する必要があります。
- このツールを使用する必要があるかどうかを判断するビジネスケースの定量化。
- アプリケーションツールの命名規則とさまざまなガイドラインを定義します。
- 財務などのツールの利点、実行できることと実行できないこと、および考えられる回避策。
ステップ1。 パイロットのテストケースの選択
- クライアントの観点から重要なモジュール/機能
- 実証しやすい機能(エンドツーエンドのハッピーパス)
- テストケースを手動でテストするのは難しく、一度自動化するとテストが簡単になります
- 自動化が失敗したテストケースの特定にどのように役立つかを示す壊れた機能
ステップ2。 自動化フレームワーク 開発
テスト自動化フレームワークは、概念、プロセス、手順、実践、および環境のセットです。これは、特定の製品を自動化するためのルールで構成される統合システムに他なりません。このシステムには、機能ライブラリ、API、テストデータ、オブジェクトリポジトリ、およびその他のさまざまなモジュールのセットが含まれています。テスト自動化に使用されるスクリプトのフレームワークとアプローチは、そのコストに影響を与えます。
次のスクリプト手法を使用できます。
- 線形
- ハイブリッド
- データ駆動型
- キーワード駆動と
- 構造化
上記の手法のいずれかを使用して、テストを推進し、テストの実行とレポートを簡素化するための特定の形式を実現するのに役立つテストフレームワークを設計できます。
テンプレート、オブジェクトの命名規則、テストケース、テストスイート、データリポジトリなどを決定します。
ステップ3。 スクリプトの開発と実行
ステップ4。 報告: ツールにはレポート機能が組み込まれていますか?組み込みのレポートは、必要なすべての情報を正確に伝えることができますか? Crystal Reports、reportNGなどのレポート用の別のツールが必要ですか?
ステップ5 。 自動化スクリプトの保守
利害関係者への提示:
概念実証とパイロットの実装が重要であると同時に、それを正しい方法で提示することも重要です。以下の点は、それを前向きに提示するのに役立ちます。
アンドロイドのためのトップ10の音楽ダウンローダー
- すべてのテストサイクルにどれだけの手動テストの労力が費やされるか、手動テスト中に直面する課題、およびそれらを克服するために自動化をどのように使用できるかから始めます。
- 概念実証に基づいてツールを選択した方法を説明する
- 自動化ツールの機能と、それがテスト要件をどのように補完するかを強調します
- 自動化を実行しながら、自動化ツールがテストの実行を高速化するだけでなく、検証とバグ識別を実行する機能にもどのように役立つかを説明します。
- レポートにテストケースの実行ステータスがどのように表示されるかを示します
- さまざまなテストケースステータスのカラフルな凡例、失敗したテストケースのスナップショット、レポートの移植性などのレポート機能を強調表示します
- そして最後に、テストサイクルごとにどれだけのテスト時間が短縮されるかを示します。
- また、開発した自動化フレームワーク全体をどのように実現できるか、および使用法と保守の観点からその利点を説明します。
単一の単純な機能または重要な機能を自動化するのにかかる時間に関する質問に答える準備をしてください。また、アプリケーションの前面で小さな変更が発生した場合、変更にかかる時間として、スクリプトの変更が必要になります。
このガイドが、自動化テストPOCドキュメントの作成を開始するのに役立つことを願っています。ご不明な点がございましたらお知らせください。
推奨読書
- 10ステップの自動化テストプロセス:組織で自動化テストを開始する方法
- Sikuli GUI自動化テストツール-ビギナーズガイドパート#2
- 最初の有料クラウドソーシングテストプロジェクトを取得するためのステップバイステップガイド
- 最高のソフトウェアテストツール2021 (QAテスト自動化ツール)
- アクセシビリティテストチュートリアル(完全なステップバイステップガイド)
- アルファテストとベータテスト(完全ガイド)
- 自動化テストとは(テスト自動化を開始するための究極のガイド)
- テスト作業を自動化する前に読むべき10のヒント