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

複数チームでmablを活用する際の課題と対応

yuki-shiromoto
November 22, 2023
1.9k

 複数チームでmablを活用する際の課題と対応

2023/11/22 mabl Experience’23で発表した内容です

yuki-shiromoto

November 22, 2023
Tweet

More Decks by yuki-shiromoto

Transcript

  1. 今日話すこと、メインターゲット 3 <話すこと> 1. 前提 2. 複数チーム展開時の施策 a. 導入 b.

    対象のピックアップ c. 定着 d. 運用 3. 出てきた課題 a. 複数での運用 4. まとめ <メインターゲット> • ローコードツールを全社的に使 おうとしている人
  2. エムスリーのQAチームの立ち位置 5 開発 エンジニア QA エンジニア 自分 組織横断のQAチームに所 属し、担当サービスが BIR

    エムスリーエンジニアリングGの組織構成 エムスリー 経営会議 マネジメントチーム CTO VPoE GL 採用TL エンジニア人事担当 事業チーム (9) 横断チーム (10) Unit1 MR君 Unit4 サイトプロモ Unit6 キャリア Unit9 治験 Unit3 新領域 Unit5 コンシューマ Unit7 BIR SRE マルデバ AI・機械学習 グループ会社 支援 グローバル プロダクト 基盤 2023-11-1時点:101名 採用チーム QA セキュリティ プロダクト 支援 データ基盤 デジスマ デジカル
  3. なぜmablを導入したのか • 課題の解消 ◦ ローコードツールのため、QAチームのメンバー全員が扱える ▪ Webブラウザの操作のレコードでテストケース作成が可能 (一部JavaScriptで記述する必要あり) ◦ 自前で実行用の環境を準備する必要がない

    • mablの標準機能でカバーできる範囲が広がる ◦ 簡単なスモークテストやVRTを実施する機能がついており、リンク切れな どの検知は自動で行える まずはBIR(私の担当チーム)で導入開始! 7
  4. ちょっと工夫が必要だった点(導入期の課題) • 記録したとおりに動かないところもある ◦ テーブルのセルの中をクリックしたり、文字入力するUI ◦ idやnameがついていない要素 ◦ 一部の日付選択のUI •

    データを初期化/固定化する必要がある ◦ ※テスト自動化につきものの課題であり、mablの問題ではない 9 今回はmablを使うことや自動テストにつ きものの困難な点の対応は省略! この点の対応はこちらをどうぞ! mablの導入と開発・QA間の協力体制
  5. テスト導入対象のピックアップと導入順序を検討 優先的に mabl を導入する対象のシステムを決めた • 自動テスト未導入 ◦ 既存自動テストの運用は概ね機能しているため、自動テスト適用範囲を 増やす方針 •

    現在も連続的に変更されている ◦ 組織としても価値が高い • mablによるテスト実装が比較的容易である ◦ 初期の成功体験と素早いPDCAによるノウハウ蓄積 13
  6. テスト導入対象のピックアップと導入順序を検討 導入順序 1. (全体)自動テスト経験者のいるチーム、人数の多いチームから 2. (チーム内)1の中でも自チーム内で完結するシステムから 3. (チーム内)優先システムに順に実装 後回しにしたもの •

    難易度が高いもの、QAチームで完結しないもの ◦ JS実装が必要(書ける人がお手本書いてから他の人も実施) ◦ テスト対象側に自動テスト対応の修正が必要 • チームをまたぐシステム 14
  7. 各チームが自由に作りすぎた <課題> 1. どれが自分のチームのものか分からなくなる 2. コメントの付け方や何をflow(関数)にするのか人により異なる 3. レビューはどうするか <対応> 1.

    命名規則を作成した 例「チーム名-サービス名-(テスト対象機能)-(実施操作)」 2. 作成ルールを定めた 3. レビューフロー、ルールを決めた 22 E2Eテスト自動化サービスmablでテストケースを作 成する際のルールを作った話 詳しくはこちらをど うぞ!
  8. 各チームの現状のケース数、月の実行予想数を出す 29 チーム サービス 4月 5月 6月 7月 Unit1 サービスA

    200 210 220 225 サービスB 100 100 100 100 サービスC 100 100 100 100 Unit2 250 250 250 250 Unit3 150 150 150 150 Unit4 100 100 100 100 Unit5 0 0 15 30 合計 900 910 935 955 実行予想数一覧サンプル
  9. 補足:ローカル実行とクラウド実行 31 CLIで実行(ローカル環境) クラウド実行(クラウド環境) 利用目的 完成したテストを通しで実行したいと きや、CI/CD連携する場合等 ローカルで成功したテストの最終確 認や定期実行用 実行の契機

    テストの動作確認や開発途中の確認 等 デプロイ時やリリース前の確認等 メリット • ヘッドレスブラウザ指定で動作が 高速 • ローカルのCIに組み込めばいくら でも定期実行可能 • クロスブラウザ、オートヒール、ス クリーンショット等 • 定期実行の場合、パフォーマンス ログ等もすべて保存 デメリット クラウドで可能なクロスブラウザ、 オートヒール等が動かない • コンテナ起動などで動作が遅い • 実行回数がカウントされる mablヘルプページの mablの実行方法と実行環境の違いはなんですか より抜粋
  10. 補足:エムスリーでの運用 環境の使い分け 32 ローカル実行 • 定期実行(チームごとにタイミ ングは異なる) • 開発中など気軽に実行したい とき

    • 失敗したテストの再実行や修 正確認 クラウド実行 • リリース前 • 証跡を残しておきたいシステ ム