Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DMMプロダクト群へのmabl活用
Search
大段智広
November 20, 2024
Technology
0
28
DMMプロダクト群へのmabl活用
mabl Experience 2024 | 2024年11月20日 でお話しさせていただいた内容です。
https://experience.mabl.com/ja/
大段智広
November 20, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
380
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
150
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
460
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
Terraform Stacks入門 #HashiTalks
msato
0
350
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.3k
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
Taming you application's environments
salaboy
0
180
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
3
170
Why does continuous profiling matter to developers? #appdevelopercon
salaboy
0
180
Featured
See All Featured
Building Your Own Lightsaber
phodgson
103
6.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
Facilitating Awesome Meetings
lara
50
6.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Designing the Hi-DPI Web
ddemaree
280
34k
4 Signs Your Business is Dying
shpigford
180
21k
Code Reviewing Like a Champion
maltzj
520
39k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Transcript
© DMM © DMM DMMプロダクト群への mabl活用 合同会社 DMM.com テクノロジー本部
QA部 大段 智広
© DMM 2 名前:大段 智広(おおだん ともひろ) 所属:テクノロジー本部 QA部 第4チーム(自動テスト推進) Team
Leader 会社以外の活動 NPO法人 ASTER • テスト設計コンテスト • JSTQB(テスト技術者認定資格の運営組織) • ISO/IEC JTC 1 SC7 WG26 (標準化組織) ソフトウェアテストの専門委員 自己紹介
© DMM
© DMM
© DMM 5 1. 背景と課題 2. なぜmablを採用したか 3. 弊社でのmablの利用状況 4.
導入時の進め方 5. 導入時に気にしている点 6. ランニングコスト計測による 運用改善 7. 社内展開・活用の展望 目次
© DMM.comc 1. 背景・課題 • DMMプロダクト群 • 開発部署が抱えるテストの課題 • QA部が開発部署を支援する取り組み
6
© DMM.comc DMMは、多数のプロダクトがあり、各々異なるデバイスに対応しています。 DMMプロダクト群 7 動画系 電子書籍系 GAME系 プロダクト X
… システム基盤 Web Mobile TV Game console … Device Product
© DMM.com 8 開発部署が抱えるテストの課題 1. テストするプロダクトやデバイスが多く、システム統合の段階になると、特に既存機能に 対するテストをやり切れずにリリースしてしまう。 ◦ 結果、修正の影響範囲が見切れず本番の障害が発生する 2.
本番障害の再発防止としてテストをしっかりやり切るようにすると、 今度は開発スピードが出なくなる 3. 開発リソースが限られているため、 実施する既存機能のテストを自動化する ことで少しでも効率的に開発を進めたい
© DMM.com 自動テストの導入支援の際には2パターンの支援を行っています。 1. ローコードベースのテスト自動化支援 (mabl) ◦ 対象 ▪ Web、モバイルアプリ
2. コードベースのテスト自動化支援 (Selenium,CodeceptJS 等) ◦ 対象 ▪ APIテスト、動画配信系のテスト、特殊デバイスでのテスト など • ローコードベースではSUTの相性が悪いまたは開発の要望によって は主にこちらで支援 9 QA部が開発部署を支援する取り組み ※SUT:System under testの略。テスト対象システム。 mabl活用は こちら
© DMM.comc 2. なぜmablを採用したか • ー 10
© DMM.com 11 なぜmablを採用したか 既に特定事業部でも使われていた。 QA部は別のツールを使っていたが、それらのツールと比較すると使勝手やコスト面で社 内で展開させやすかった。 23年から特定事業部の自動テスト支援を行い、24年からQA部で本格採用。 主な採用ポイント •
ユーザー数、クレジット数を全体として共有ができる • Webとモバイルアプリのテストを統合した形で利用できる • ワークスペースを自由に追加できる • 社内のネットワーク上で利用できる
© DMM.comc 3. 弊社でのmablの利用状況 • 契約プラン・導入数 • 基本的なWebアプリの利用構成 • 基本的なモバイルアプリの利用構成
12
© DMM.com 13 契約プラン・導入数 • 利用プラン ◦ mabl Web Core
+ mabl Mobile Core ◦ Advanced Content Validation (MailBox and PDF Testing) • 導入数 ◦ Webアプリ ▪ 事業部:4事業部 ▪ チーム数:7チーム ◦ モバイルアプリ ※24年から ▪ 事業部:2事業部 ▪ チーム数:2チーム Web Mobile &
© DMM.com 14 基本的なWebアプリの利用構成 mabl テスト対象の アプリケーション環境 (on 本番) mabl-link
(stg) (on stg) mabl-link (本番) Github 開発リポジトリ 社内ネットワーク mabl Desktop App or テスト実行 トリガ 社内ネットワークを利用して実行が必須。 テスト修正 ローカル実行 個人
© DMM.com 15 基本的なモバイルアプリの利用構成 mabl テスト対象の アプリケーション環境 (stg) (on stg)
Bitrise 開発リポジトリ 社内ネットワーク mabl Desktop App or テスト実行 トリガ 社内ネットワークを利用して実行が必須。現状はエミュレータ/シミュレータを利用。 テスト修正 ローカル実行 個人 mabl cli アプリ取得 (※mabl-linkが欲しい…)
© DMM.comc 4. 導入/移行時の進め方 • QA部の支援体制 • 導入/移行から運用の流れ 16
© DMM.comc QA部の支援体制 17 動画系 電子書籍系 システム 基盤系 プロダクト X
… QA部 開発からの相談を受けて、それぞれのプロダクトの支援を行う。 必要があれば、テスト作成や運用も行う。
© DMM.comc 18 導入/移行から運用の流れ 導入/移行フェーズ 運用フェーズ ヒアリン グ テストベース 分析
計画・合意 接続環境設定 設計・実装 運用開始 テスト都度実行 定期実行結果確認 テスト保守・拡張 月々のコスト算出と報告 導入評 価 (1ヶ月 後) 導入報 告 (1ヶ月 後) 導入評 価 (3ヶ月 後) 導入報 告 (3ヶ月 後) 導入評 価 (6ヶ月 後) 導入報 告 (6ヶ月 後) …
© DMM.comc 5. 導入/移行時に気にしている点 • ポイント①:コストを抑えてスモールスタートできる • ポイント②:自社独自の環境/ルールで利用できる • ポイント③:テストの開発や運用をサポートしやすい
19
© DMM.comc 20 導入から運用の流れ 導入/移行フェーズ 運用フェーズ ヒアリン グ テストベース 分析
計画・合意 接続環境設定 設計・実装 運用開始 テスト都度実行 定期実行結果確認 テスト保守・拡張 月々のコスト算出と報告 導入評 価 (1ヶ月 後) 導入報 告 (1ヶ月 後) 導入評 価 (3ヶ月 後) 導入報 告 (3ヶ月 後) 導入評 価 (6ヶ月 後) 導入報 告 (6ヶ月 後) … ポイント①
© DMM.com 21 ポイント①:コストを抑えてスモールスタートできる • ツールにかけられる予算がある部署からあまりない部署まで様々 ▪ 特にツールが高くて導入したいけど出来ない組織が多い ▪ 導入したとしても維持費が高すぎて結局やめてしまう
▪ 同様のツールが乱立して、結果的に会社としてコストが増える ことも… • QA部でツールをまとめて利用コストを抑える ◦ みんなで使ってコストが抑える(同様のツールが2つあると狙いめ) ◦ まずは費用が極力掛からない 範囲で試してもらう ▪ 重要なリリース時のみに利用する ▪ テスト結果は残らないがローカル実行を利用する • [mabl機能]ローカル実行
© DMM.comc 22 導入から運用の流れ 導入/移行フェーズ 運用フェーズ ヒアリン グ テストベース 分析
計画・合意 接続環境設定 設計・実装 運用開始 テスト都度実行 定期実行結果確認 テスト保守・拡張 月々のコスト算出と報告 導入評 価 (1ヶ月 後) 導入報 告 (1ヶ月 後) 導入評 価 (3ヶ月 後) 導入報 告 (3ヶ月 後) 導入評 価 (6ヶ月 後) 導入報 告 (6ヶ月 後) … ポイント②
© DMM.com 23 ポイント②:自社独自の環境/ルールで利用できる • 弊社プロダクトの性質上、国内/海外のIPアクセスで振る舞いが変わる ◦ [mabl機能]mabl-link • 本番環境/検証環境でのテストアカウント情報を適切に管理できる
(特に購入用のテストアカウントは個人で管理する社内ルール になっている) ◦ [mabl機能]ワークスペース ◦ [mabl機能]クレデンシャル ◦ [mabl機能]環境変数
© DMM.comc 24 導入から運用の流れ 導入/移行フェーズ 運用フェーズ ヒアリン グ テストベース 分析
計画・合意 接続環境設定 設計・実装 運用開始 テスト都度実行 定期実行結果確認 テスト保守・拡張 月々のコスト算出と報告 導入評 価 (1ヶ月 後) 導入報 告 (1ヶ月 後) 導入評 価 (3ヶ月 後) 導入報 告 (3ヶ月 後) 導入評 価 (6ヶ月 後) 導入報 告 (6ヶ月 後) … ポイント③
© DMM.com 25 ポイント③:テストの開発や運用をサポートする • プロダクト共通でよく利用するものを用意しておく (特にスニペット ) ◦ 例
▪ [JavaScriptスニペット]テスト用クレジットカード番号生成 ▪ [JavaScriptスニペット]会員登録用の認証コード取得 ▪ [JavaScriptスニペット]作品一覧でランダムな作品を押す ▪ [JavaScriptスニペット]今日の日付の値を取得する etc,..,
© DMM.comc 6. ランニングコスト計測による 運用評価と改善 • 自動テストを無理なく運用できているか ? • 運用コスト評価:利益のモニタリング
• 運用コスト評価:損失のモニタリング • 運用コスト評価:ランニングコスト割合のモニタリング • よくある運用課題と対策 26
© DMM.comc 27 導入から運用の流れ 導入/移行フェーズ 運用フェーズ ヒアリン グ テストベース 分析
計画・合意 接続環境設定 設計・実装 運用開始 テスト都度実行 定期実行結果確認 テスト保守・拡張 月々のコスト算出と報告 導入評 価 (1ヶ月 後) 導入報 告 (1ヶ月 後) 導入評 価 (3ヶ月 後) 導入報 告 (3ヶ月 後) 導入評 価 (6ヶ月 後) 導入報 告 (6ヶ月 後) … ポイント
© DMM 28 自動テストを無理なく運用できているか? テスト安定率を上げることも大事なのですが… 運用している自動テストに対して結果確認や修正に時間が掛かりすぎていないかをざっ くりでも良いので月ベースのコスト を計測して振り返っています。 ランニングコスト割合のモニタリング
© DMM 29 運用コスト評価:利益のモニタリング 自動テストが補っている 手動テストのコスト
© DMM 30 運用コスト評価:損失のモニタリング 自動テストの保守コスト + ツールのコスト
© DMM 31 運用コスト評価:ランニングコスト割合のモニタリング 損失 > 利益に なっていないかを 毎月確認する 基準(99.99%)
© DMM 弊社のよくある運用課題と対策 テスト方法、対象プロダクト、ツール(mabl)の3つそれぞれで対応が出来ない かを考える。 32 よくある運用課題 ⇒ 対応策 プロダクトのUI刷新プロジェクトが走り、UIが五月雨
式に変更される ⇒ テスト方法 変更対応され切るまで自動テストの運用を 止める。 違う手段(手動テストなど)で対応する 対象プロダクト IDの付与を開発と検討する 読み込みが終わらず画面がタイムアウトする ⇒ テスト方法 テスト環境(オンプレ環境with mabl-link)を 設定や構成を見直す ツール(mabl) 相談して、クラウドの性能を上げる メンバが確認・保守作業に時間をかけている ⇒ テスト方法 テストの作りや運用について認識合わせ する
© DMM.comc 7. 社内展開・活用の展望 • 社内展開 • mablの更なる活用に向けて 33
© DMM 社内展開 1. 「気軽に使えるならやってみよう」という環境を整備する • ポイント①:コストを抑えてスモールスタートできる • ポイント②:自社独自の環境/ルールで利用できる •
ポイント③:テストの開発や運用をサポートする 2. QA部主体→開発部署主体で利用できるようにする • QA部がサポートしながら、無理のない範囲で開発チームが主体的に運用で きるようにする • そのための整備やサポートを充実させる 34
© DMM mablの更なる活用に向けて 1. テスト範囲 (Product×Device)の拡大 • Webだけでなくモバイルアプリをより活用していく 2. システム統合、リリースまでのリードタイムを短くする
• まだ意外と社内で知られていないローカル実行の活用 35
© DMM ご静聴ありがとうございました