Upgrade to Pro — share decks privately, control downloads, hide ads and more …

スタンバイQAのテスト自動化導入

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for スタンバイ スタンバイ
January 31, 2024
1.2k

 スタンバイQAのテスト自動化導入

Avatar for スタンバイ

スタンバイ

January 31, 2024
Tweet

More Decks by スタンバイ

Transcript

  1. Confidential © Stanby, Inc. 目次 2 1. スタンバイの紹介 2. 導入の目的

    3. Slackの活用 4. メールチェックはSlackで 5. 開発コミュニケーションと画像差分 6. まとめ
  2. Confidential © Stanby, Inc. 3 会社概要 社名 株式会社スタンバイ 事業内容 求人検索エンジン「スタンバイ」の運営

    住所 東京都渋谷区 設立 2019年11月12日 資本金 1億円 株式保有割合 LINEヤフー60%、ビジョナル40% Yahoo! JAPANやLINE などを運営する LINEヤフー Visional 即戦力人材と企業をつなぐ 転職サイト「ビズリーチ」をはじめさまざ まな事業を提供 Yahoo! JAPANの圧倒的リーチ力と ビズリーチのHR Tech事業ノウハウを活かし 求人検索エンジン事業を運営 株式会社スタンバイは、 LINEヤフー株式会社とビジョナル株式会社の合弁事業会社 です。
  3. Confidential © Stanby, Inc. 対象組織の概要 - 提供サービス(プロダクト) 5 求人検索エンジン「スタンバイ」は、Web上に点在するあらゆる求人情報を一括で検索できるサービスです。 ネット上の求人を

    一括で検索 ユーザー(求職者) 求人メディア 企業ページ 直接スタンバイに 登録された求人 採用管理システム 求人情報取得 クローリング等 ・雇用形態 ・給与形態 ・掲載開始日 ・こだわり条件 ・自宅や最寄り駅からの距離 求人票 検 索 応 募 ユーザー(求職者)
  4. Confidential © Stanby, Inc. 目標の置き方 MagicPod導入で 何を行いたいか 何を行えるようになるか ❶コストカット(優先度低) ・E2Eテストのコスト

    vs シナリオ作成/メンテ ❷QA範囲の拡大 ・E2Eテスト対象の拡大 実施頻度をどこまで高めるか ・E2E/リグレッションのテスト外としていた箇所 テスト範囲は常に増加 する ❸普段のテスト実施の効率化 ・テスト環境の整備にも使用 前日の操作ログが反映される箇所など 7
  5. Confidential © Stanby, Inc. QA体制 【スタンバイQAの体制】 ◆QAマネージャー ◆QAエンジニア(5名) QAエンジニアA 【担当】Web(BtoC) QAエンジニアB 【担当】Web(BtoC)

    QAエンジニアC 【担当】Web(BtoC)、管理ツール(BtoB) QAエンジニアD 【担当】App QAエンジニアE 【担当】App MagicPodを導入して、1年半 シナリオ数は、Web/App(Android)合算で220超 ※App(iOS)は実装中 MagicPodのテストシナリオ作成は誰でもができる しかしながら、テスト設計 /実装を行える素養のあるスタッフ であることも重要 8
  6. Confidential © Stanby, Inc. スタンバイQAでのMagicPod化 QAで完結するE2Eテスト自動化が最大のミッション ※それまでは開発で担当している部分があった テスト自動化を一般化するために MagicPodを導入 ❶E2Eのチェックシートの再作成(統一化を考える)

    MagicPod運用を前提としたチェック順 に改変 ❷テストは小分けに(カバレッジを考える) 発生条件の早期特定と、失敗(後続テストの未実施)によ るカバレッジの低下を予防 ❸運用方法の策定(メンテナンスを考える) 「スプレッドシート上のテスト項目」と「 MagicPodのテストシ ナリオ)間のトレーサビリティを上げる  →説明やコメントなどに相互リンクを貼る ❹メンテナンス方法(効率化を考える) テストシナリオの改修は本番リリース後(改修箇所は手動 テスト) 9
  7. Confidential © Stanby, Inc. テスト結果はSlackに通知 スタンバイのQAチームがテスト対象とする環境は、以下です。 本番環境 → 3時間ごとに自動実行 ステージング環境

    → 3時間ごとに自動実行 開発環境 → QAテスト時に手動で一括実行 【knowledge】 ・運用改善方法や周知すべき結果(後述)の共有 【失敗】 ・開発環境の成否を問わず手動実行の結果 【成功】 ・本番/検証を問わず成功したテスト結果 【要確認】 ・ステージング環境のテスト一括実行> 成功以外の結果 【要確認本番】 ・本番環境のテスト一括実行> 成功以外の結果 11
  8. Confidential © Stanby, Inc. MagicPodの成果を残す 【a】QAチームでE2Eテストの自動化が完結する場合、 将来的にMagicPodの評価がQA内で閉じてしまう 【b】開発などの他スタッフにも、 MagicPodの成果を共有するこ とで、中長期的に導入意義と成果を周知しつつ、

    MagicPodで検 出できることを認識してもらう 【c】開発スタッフから、 MagicPodでのシナリオ作成依頼などが 発生し、好循環が生まれる 12 JIRAのバグチケットにMagicPodで検出したバ グかを記録するフィールドを追加 Slackでの速報の不具合連絡で言及 QA依頼のSlackのスレッドにスタンプ
  9. Confidential © Stanby, Inc. スタンバイQAのメールチェック方法 スタンバイのメール送信チェックでは、 Slackを使用しています MagicPod専用の外部チャンネルを作成し、 Slackチャンネル用 のメールアドレス向けにメールを送信しています

    -------------------------------------------------------------------- 【設定方法】 1. 受信用のSlackチャンネルを作成 2. Slackログイン用のメールアドレスの作成 3. ゲストとして招待(2段階認証の解除) 4. チャンネル設定のインテグレーション → このチャンネルに メールを送信で、受信用メールアドレスを発行 -------------------------------------------------------------------- 【注意事項】 ・ログイン〜メールの内容取得までは共有ステップで作成する -------------------------------------------------------------------- 【メリット】(Slackを普段使いしている場合) ・導入コストが低い ・メール送信回数に制限なし ・シナリオ作成時のメール確認が簡易 ・テスト結果確認時のメール確認が容易 -------------------------------------------------------------------- 14
  10. Confidential © Stanby, Inc. 開発コミュニケーションと画像差分 スタンバイでは、リリースサイクルの兼ね合いから全てのリリー ス施策をQAテストするわけではありません。 簡易なABテスト等はQAを経ずにリリースします。(全社向けにリ リースアナウンス有り) --------------------------------------------------------------------

    【運用方法】 1. 「画像差分比較」を最小限に多用する 2. リリース後の画像差分は、「画像差分確認」箇所をキャプ チャし、QAスタッフに共有 -------------------------------------------------------------------- 【デメリットをメリットに変化】 ・開発→QAのコミュニケーション回数の削減 ・QAが把握できないリリースの減少 ・QAを経ないリリース内容の視覚的な早期把握 ・リリース後のQAチェックが容易 -------------------------------------------------------------------- 16 ◆リリース前 ◆リリース後
  11. Confidential © Stanby, Inc. 【感謝】新機能実装へのサポートの手厚さ 【問題】 ・クリック前後で変化を確認したい ・クリック前後でロケータが一緒 ・本番環境では、テスト対象をユニークにできない ・リストの高さが可変の為、通常の画像差分ではズレが発生す

    る -------------------------------------------------------------------- 【要望】 「画像差分比較」で差分があることを確認したい -------------------------------------------------------------------- 【MagicPod社】 シナリオ途中で画像を変数化して、 比較できる機能を実装できる -------------------------------------------------------------------- 【結果】 より精度の高いテストが可能となった -------------------------------------------------------------------- 18
  12. Confidential © Stanby, Inc. まとめ スタンバイではE2EテストをMagicPodに移行しています。 • E2Eテストの責務を、開発→QAに移管した • QAエンジニア全員の責務として一般化した

    • テスト一括実行は毎日8回程度、回している • 必要なシナリオの拡充は継続的に行っている • 開発環境ではリグレッションテストとしても使用している • 手作業のチェックシートを基にすることで相互補完できる • MagicPod化できた項目は手作業ではクローズしている • メールチェックは、Slackを使用 • やりたいけど、やれないテストはMagicPod社に相談する 20