My Certifications Visit Documentation Mabl Home Mabl Product Portal Mabl Login

成功させるためのテストの整理

概要

このレッスンを受講する前に

以下のレッスンを修了していると、ここでの学習効果が一層高まります。

  • mablアプリケーションの概要
  • 環境とアプリケーション
  • mabl Trainerの概要
  • フロー

学習目標 🧠

このレッスンを修了すると、以下の知識や技能が身につきます。

  • ワークスペースの基盤を形成
  • 目標に従ってテストやプランを整理
  • プランの設定を利用してテストを最大限に活用

これが重要である理由

早期にベストプラクティスを確立することが、より大きな成功につながる理由

チームにはそれぞれ違いがあり、mablが柔軟性に優れたツールであることから、ワークスペースもそれぞれまったく異なるものとなります。 

個々の目標、要件、制限を把握したら、mablを個々のプロセスに適用するために、ベストプラクティスをガイドとして利用できます。

これがうまく機能すると、すべてのメンバーが以下の情報を共有できます。

  1. 実行すべき内容
  2. 実行すべきタイミング
  3. 実行すべき理由

信頼関係を持ち、適切なコミュニケーションをとることは、自動化戦略を効果的に実現するための実効性の高いチームを作ることにつながります。これにより、アプリケーションのカバレッジが拡大し、結果としてアプリケーションの品質も向上します。まさに大事な要素です! 

 

アプローチ

ここで実行する内容

ベストプラクティスの学習

このレッスンでは、ベストプラクティスについて学習します。 

ワークスペースの最適なバージョンをできるだけ早く稼動させたい場合は、自由に使えるツールについて学習しておくことも必要です。また、ワークスペースを整理するために他のユーザーがどのようにしてそれらのツールを最大限に活用しているかを知ることも重要です。

スコープの定義

mablのコンポーネントとその使用方法を理解したら、作業を開始する前に、短期、中期、長期の目標をそれぞれ確認します。

実行と反復

mablの機能に関する知識と、自動化戦略とを結び付けます。

永久に続くものは何もないことを忘れないでください。戦略も常に変化します。 

時間をかけて反復することが、自動化の最善の形を実現する方法です。

 

ベストプラクティスの学習

命名規則の設定

最初のベストプラクティスは、自動化戦略を構成するmablのさまざまなコンポーネントにどのような名前を付けるかを決めることです。 

以下では、概念の簡単な定義と、自動化での使用についてどのように考えるべきかについて説明します。

mablのコンポーネントの命名規則を定義する過程で、それぞれがカバーする機能の範囲と、それぞれのピースが「自動化パズル」のどの位置に当てはまるのかを理解することができます。

  • 環境
    • 開発環境が自動化のコンテキストでどのように機能するかに応じて名前を付けます。複数のQA環境やステージング環境があるかどうかを確認します。
  • プラン
    • プランは通常、単一モジュールまたは複数の機能のセットを対象としています。
    • アプリケーションの種類、環境、実行頻度、ブラウザーを確認します。重要な情報をタイトルに入れます。
  • テスト
    • テストは通常、個々の機能または機能のサブセットを対象としています
    • この機能は1つのエンドツーエンドのテストでカバーする必要があるのか、それとも複数のテストに分割できるのかを検討します。
  • 説明 (プランとテスト)
    • テストやプランの目的に関する説明です。
    • このプラン/テストで実行する内容や、これが重要である理由について理解しようとしているさまざまなユーザーのために、どのような情報をここに記載すれば役に立つのかを検討します。
  • ラベル
    • プランの場合: CI/CDの導入、組織、検索のフィルタリングを指定します。
    • テストの場合: 組織、検索のフィルタリングを指定します。
  • フロー
    • 他のテストで再利用可能なテストのサブセットを確認します (フローの詳細については、こちらをご覧ください)。
    • この一連のステップが、複数のテストで再利用されるかどうかを確認します。
  • コメント
    • このテストを検討しているユーザーが知っておくと便利な情報、細かな違い、このテスト結果について明確ではない事柄について確認します。

例: 

プラン: [Blog site] - 一般的な機能領域。

説明: 「Verify search functionality, that each type of blog and webinar can be searched, and that you end up on the correct page each time」(検索機能 - ブログやウェビナーのタイプごとに検索できること、および毎回正しいページに移動することを確認します。) - 内部のテストで検証する内容を示します。

テスト: [Search] - テストの対象となる個々の要素。

ラベル: [Search] - このプランに含まれる機能を示します。

プランの設定の活用 

プランはmablにおいて大きな力と責任を有する領域であり、mablの自動化をニーズや目標に合わせて調整することができます。

  • [Environments]
    • 複数の環境に対してプランを実行するオプションがあります。
    • 注意: これを行うには、環境が相互に正確なコピーである必要があります。そうでない場合、結果に違いが生じ、本当の品質が示されていない可能性があります。

  • [STAGE] 
    • テスト担当者がmablを自動化するためのコントロールパネル - テストが相互にどのように実行されるかを指定できます (これは非常に重要です)。
      • 例: データのセットアップ/クリーンアップ
    • 同時性 - [Parallel] または [Sequential] - テストの実行順序
    • ブラウザーのカバレッジ
    • [Visual change learning] 

undefined

  • [Device settings]
    • クラウドでテストを実行するブラウザーやデバイスを制御できます。
    • 免責事項: サブスクリプションパッケージによってアクセスできるブラウザーが異なります。詳細については、support@mabl.comまでお問い合わせください。
    • [Desktop] と [Mobile web]
      • プランは、デスクトップとモバイルWebの両方ではなく、どちらかに対して実行されます。そのため、両方に対してテストを実行する場合は、プランを複製して、それぞれにテストを設定します。
      • モバイルWebの詳細については、こちらをご覧ください。

  • トリガー
    • テストを実行するタイミングを制御します。 
    • これが開発環境にどのような影響を与えるかを考えます。特に、データの依存関係がある場合や、特定の時間に環境がシャットダウンする場合は注意が必要です。

  • [Advanced options]
    • アクセス制御
      • HTTP基本認証
      • [Send Customer HTTP Headers]
      • ログイン資格情報 - 自動ログインを利用できるようになり、テストのステップとしてアプリケーションへのログインを含める必要がなくなります。
  • その他
    • [Run Multiplier] - 合計実行数に選択した数を掛けます。
    • [Automatic retry on failure]
    • [Visual change learning] - 視覚的変化の学習の詳細については、こちらをご覧ください。

ここでは中心となるベストプラクティスをまとめましたが、mablユーザーは日々、役に立つ新しいヒントやコツを学習しています。

(詳細については、Friends of mabl Slackコミュニティをご覧ください。コミュニティについて不明な場合は、support@mabl.comまでお問い合わせください。)

 

スコープの定義

はじめに

自動化戦略の「ビジョン」を確立することで、それを実現するための具体的な方法を明らかにすることができます。

そのために重要なことは、明確で実行可能な目標を設定することです。何を実行するのか、いつ実行するのか、なぜ実行するのかを設定します。

これは簡単なことではありませんが、製品やチームにとって完璧な自動化の世界を思い描くために最善を尽くすことが大切です。

mablの柔軟性

  • チーム、製品、開発プロセス、全体的な戦略、目標などはそれぞれ異なるため、現在の状況と、一定の期間内で達成する目標について理解する必要があります。
  • mablは、さまざまなアプリケーション、業界、ユースケースに対応できるように構築されていますが、ニーズに合わせた設定は、お客様自身が行う必要があります。

大規模な自動化

大規模な自動化に影響を与えるアプリケーションや開発環境の側面について把握する必要があります。

  • アプリケーションに状態やデータの依存関係があるかどうか (データの設定とリセットが必要であり、変更すると他のテストに影響するなど)。
  • アプリケーションにユーザーの同時性に関する制限があるかどうか (一定の数のユーザーしか同時にログインできないなど)。
  • 環境に関する制限があるかどうか。特定の時間にダウンしたり、セキュリティに制限があるか (後者に該当する場合は、ここからmabl-Linkのレッスンを確認してください)。

チームワークの重要性

目標を達成するために、チームが互いにどのように協力するのが最善かを理解することが大切です。

  • アプリケーションの各部分のテスト作成/レビューは誰が担当するか。
  • 時間の経過とともにチームはどのように成長するか。
  • 主要なチームメンバーが離脱した場合はどうするのか。
  • メンバー同士や上司にどのような可視性を提供する必要があるか。
  • 自動化の経験が最も豊富なのは誰か。

スコープ内の項目 

特定のテスト、計画、またはフローに含める項目の範囲: 何を最初に自動化するか、チームのどのメンバーがそれを処理するか、またどのようにアプローチするか。

  • 自動化した場合に、自動化の基盤を形成するのに役立つ領域はどれか。
  • 最もビジネス価値が高い領域はどこか (例: Eコマースのチェックアウト)。
  • より複雑で自動化が難しいアプリケーションの領域はどこか。
  • バグが発生しやすい領域はどこか。
  • テストが簡単で最初に自動化できる領域はどこか。また、新人や技術スキルが不足している人材のトレーニングに役立つ領域はどこか。

成功のための目標設定

実行可能な短期的目標と長期的なストレッチ目標を設定して、自分とチームに以下の内容を問いかけます。

  • 現在の自動化カバレッジはどの程度か、また、今から3か月後、6か月後、12か月後にはどの程度にしたいか (各期間の目標を実際に設定します)。
  • ロードマップに基づいて、今後1年間でのアプリケーションの改良と機能変更をどの程度見込むか。
  • ユーザーはどの程度の頻度でアプリケーションの特定の部分を操作しているか。
  • アプリケーションの品質を確保するために、どの程度の頻度でテストを実行する必要があるか。
  • 適切なカバレッジを達成するために、どのような順序でテストを実行するか。また、どの程度の機能を1つのフロー、テスト、プランに含めるか (これは非常に重要です)。

例: 

  • 30日後にはメインユーザーのハッピーパスをカバーし、60日後には完全なリグレッションスイートをスムーズに実行する。
  • 30日後にはチームに基本機能を強化させ、3か月目にはmablをCI/CDパイプラインに統合する。

時間の経過とともにいつでも軌道修正できますが、必要に応じて簡単に再編成できる方法でテストを作成して整理することが重要です。

 

実行と反復

どのような意味があるか

経営上の優先課題、製品開発の目標、チーム編成、技術スタックなど、状況は変化します。少なくとも四半期ごとに戦略を評価し、必要に応じて調整や変更を行います。

何が機能し、何が機能しないかを把握するために、結果ページの [Comments] セクションを使用して、チームメイトのために自分の考えを手がかりとして残しておきます。

undefined

Ask mabl - mablに聞いてみよう! お客様の戦略をお伝えいただければ、それに対するフィードバックを提供いたします。

 

まとめ

復習 

ここで学習した内容

  • mablの自動化のコンテキストで、独自の要件、チーム、および目標について理解するためのアプローチ方法
  • 確立したスコープを取得し、自由に使用できるツールを使用してmablワークスペースに適用する方法
  • ユーザーが求める品質保証への取り組み成果を最大化するために、新たなアプローチと設定を練り込みながら今後の戦略に活かしていく方法