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
mablりましょう。
Search
yuki tamazawa
February 19, 2020
Technology
0
1k
mablりましょう。
SETグループより、JapanTaxi のプロダクトに関する品質の取り組みについてご紹介します。
yuki tamazawa
February 19, 2020
Tweet
Share
More Decks by yuki tamazawa
See All by yuki tamazawa
DMM.swift#1 Mergeable Libraryを試した
srea
3
700
アラートなどの割り込み表示を制御する
srea
2
570
DMM 次世代SDK開発チーム
srea
0
450
OSSと私
srea
1
540
ソフトウェア品質を支える E2Eテストのパイプライン作り
srea
3
3.3k
Other Decks in Technology
See All in Technology
AIフル活用で挑む!空間アプリ開発のリアル
taat
0
130
webpack依存からの脱却!快適フロントエンド開発をViteで実現する #vuefes
bengo4com
0
1.1k
AI時代の開発を加速する組織づくり - ブログでは書けなかったリアル
hiro8ma
1
210
今この時代に技術とどう向き合うべきか
gree_tech
PRO
2
2.1k
Claude Code Subagents 再入門 ~cc-sddの実装で学んだこと~
gotalab555
10
17k
dbtとBigQuery MLで実現する リクルートの営業支援基盤のモデル開発と保守運用
recruitengineers
PRO
3
150
AI-Readyを目指した非構造化データのメダリオンアーキテクチャ
r_miura
1
270
現場データから見える、開発生産性の変化コード生成AI導入・運用のリアル〜 / Changes in Development Productivity and Operational Challenges Following the Introduction of Code Generation AI
nttcom
1
420
OSSで50の競合と戦うためにやったこと
yamadashy
3
840
Copilot Studio ハンズオン - 生成オーケストレーションモード
tomoyasasakimskk
0
190
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
20k
「魔法少女まどか☆マギカ Magia Exedra」の多様なバトルの開発を柔軟かつ効率的に実現するためのPure C#とUnityの分離について
gree_tech
PRO
0
220
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Visualization
eitanlees
149
16k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
Become a Pro
speakerdeck
PRO
29
5.6k
Code Reviewing Like a Champion
maltzj
526
40k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Practical Orchestrator
shlominoach
190
11k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
550
Transcript
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved
継続的デリバリのための継続的テスト:mabl Japan 1 Yuki Tamazwa, SET Group leader at JapanTaxi mablりましょう。 Photo by Victor Xok on Unsplash
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved 私について
たまざわゆうき Twitter @yukimikan88 GitHub @srea 最近公開したOSS
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved 1.
事業紹介 2. チームの取り組み 3. テストツールについて 4. mablについて
4 Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved
5 Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved
6 Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved
7 Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved SETグループのミッション
ソフトウェア品質と開発生産性を上げ 多くの施策安心してリリース出来る仕組みを作る メンバー 社員4名+業務委託 ・プロダクト横断的なQAプロセスの提案・運用・改善 etc.. ・テスト自動化推進、開発者向けデバッグツール開発 etc..
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved JapanTaxiのSETは、
どんな戦略で ミッション実現を目指しているのか。 Photo by Matt Duncan on Unsplash
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved 戦略と考え方
攻めの自動化 シフトレフト
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved 攻めの自動化:バグを見つけ素早くフィードバック
攻めの自動化 - 当たり前品質はソフトウェア技術で - 機械は電気があればサボらない⚡ - 人を増やさずリソースを増やせる - 自分の仕事を無くせる - テストデータ作成を自動化 - リグレッションテストの自動化 - レポーティング・リリース自動化
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved シフトレフト
シフトレフト:バグを `見つける` から `作らない` へ - 要件定義参加を目指し、手戻りを最小 限に - 長期的にQAエンジニアが魅力的品質 へ関わる足掛かり リリース前テスト 要件定義 開発 機能テスト サービスの知見を貯めながら左を目指していく 右側から自動化でQAエンジニアのリソース開放
13 Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved
JapanTaxiにおける テストの難しいところ
14 Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved
1回の乗車体験は 複数プロダクトで実現されている
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved JapanTaxiアプリ
iOS / Android JapanTaxi 業務支援 Web (React) JapanTaxi DRIVER’S Android + IoT JapanTaxiタブレット Android (自社ハード) + IoT 進め方:私たちが取った選択
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved 関わり始めた時期
JapanTaxiアプリ iOS / Android JapanTaxi 業務支援 Web (React) JapanTaxi DRIVER’S Android + IoT JapanTaxiタブレット Android (自社ハード) + IoT 6ヶ月前〜 1年前〜 6ヶ月前〜 2ヶ月前〜
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved JapanTaxiアプリ
iOS / Android JapanTaxi 業務支援 Web (React) JapanTaxi DRIVER’S Android + IoT JapanTaxiタブレット Android (自社ハード) + IoT 攻めの自動化進捗 手作業中心 自動化検討 手作業中心 自動化検討
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved シフトレフト進捗 •:人 •:機械
要件定義 参加 機能テスト 設計 機能テスト 実行 リリース前テスト 実行 リグレッションケース 整備 (仕様理解) JapanTaxi • • • • • タブレット - • • • • DRIVER’S • • • • • 業務支援 - - - • •
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved 人の部分がまだまだ多いが、
ソフトウェア技術で 効率化する戦法
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved テストを裏で支える技術
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved Texas
- 何でもテストツール テストで繰り返し行われる手順をAPI化して効率化。(SQL実行や注文履歴データ作成やお気に入り、カー ド種別データ、クーポン、ユーザーランク、データパターン用意 etc… ) 個人間のスキル差を埋め、難易度を下げる。 AWSにデプロイし、mablからもAPIステップを使って利用している。 手動・自動テスト、日々のデバッグ作業で利用される テスト・デバッグに特化したツールでテストのためなら基本的になんでもする WebUIでも提供し、エンジニアのデバッグ作業や自動テスト・QAエンジニアの手動テストで日々活用している。 ref: https://blog.japantaxi.co.jp/2019/11/21/5377 Photo by Chandler Cruttenden on Unsplash
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved Texas
API Docs - for Automation Testing
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved Texas
Web Client - for QA Engineer
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved Texas
で使われている技術 ・レガシーからモダンなシステムまで、多プロダクトと接続することでデータを操作出来るようにしている。 ・テキサスはテスト・デバッグする軸で、データ作成作業を最小化してくれる。
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights
Reserved 本題 mabl活用事例
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved JapanTaxiアプリ
iOS / Android JapanTaxi 業務支援 Web (React) JapanTaxi DRIVER’S Android + IoT JapanTaxiタブレット Android (自社ハード) + IoT タクシー会社の業務負荷を軽減するプロダクト 運行管理・注文管理・決済管理・乗務員や営業所管理..
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved Web
Architecture JapanTaxi 業務支援サービスの特徴 Support Browser CI/CD masterにマージで 本番デプロイ
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved なぜ
SaaS を使うのか • ツールがどんどん改善されている、保守不要 • 専門家によるサポートがいつでも得られる • JapanTaxiのミッション実現に集中ができる ◦ =>より良い価値を提供することに頭を使える • 興味が少しでもあったらとりあえず色々無料トライアルをおすすめします!
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved 導入を進めるにあたり
• 事前準備 ◦ 自社サービスの理解 ◦ ヒアリング、優先度を決め、認識合わせ • テスト作り ◦ シナリオ作り ◦ テストAPI 用意 (Texas) • 1ヶ月ほどで100シナリオ作成!
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved mablの良いと思う点
1. フロー 2. ステージ 3. ステップタイムライン 4. オートヒール
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved mablの良いところ
- 1 • Flows 共通ステップを定義 再利用ができる ベースができてしまえば シナリオ実装速度も改善
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved •
Stage テストデータ作成 の後に 並列テスト実行 テスト実行方法が柔軟 mablの良いところ - 2
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved mablの良いところ
- 3 • Step Timeline 遅いステップやエラーが 起きた箇所を素早く把握! シナリオの最適化がしやすい
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved mablの良いところ
- 4 • Auto Heal シナリオを良しなに修正 メンテナンス運用コスト削減 シナリオが壊れていたことすら 気づかないレベル
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved 触って約2ヶ月での所感
• 機能改善スピード早い。 • データパターンの多いフォーム系で不具合を多く発見 • 機能リリース時のデグレの不安が減り、ガンガン開発ができるよう に • メイン担当1人で運用だいたいまわせる • もっと使いこなせば、さらに運用コスト減らして品質あげられそう • mabl cli にSelenium Export = ベンダーロックされない?
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved まとめ
• JapanTaxiは複数プロダクトで1つの体験を提供している • 攻めの自動化とシフトレフトで価値の最大化を目指している • mabl は事業の提供価値向上に多くの時間を割くための有力候補 になる
Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved “品質は偶然の出来事ではない、
つねに知的努力の結果である。” John Ruskin Photo by Matt Duncan on Unsplash
〒102-0094 東京都千代田区紀尾井町3-12 3-12 Kioicho Chiyoda-ku, Tokyo 102-0094 Japan TEL 03-6265-6265 FAX 03-3239-8115
www.japantaxi.co.jp 文章·画像等の内容の無断転載及び複製等の行為はご遠慮ください。 Proprietary and Confidential ©2017 JapanTaxi, Inc. All Rights Reserved