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
970
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
1
640
アラートなどの割り込み表示を制御する
srea
1
540
DMM 次世代SDK開発チーム
srea
0
430
OSSと私
srea
1
520
ソフトウェア品質を支える E2Eテストのパイプライン作り
srea
3
3.2k
Other Decks in Technology
See All in Technology
激動の一年を通じて見えてきた「技術でリードする」ということ
ktr_0731
1
500
自動化の第一歩 -インフラ環境構築の自動化について-
smt7174
1
130
Google Cloud Next 2025 Recap マーケティング施策の運用及び開発を支援するAIの活用 / Use of AI to support operation and development of marketing campaign
atsushiyoshikawa
0
180
ペアーズにおける評価ドリブンな AI Agent 開発のご紹介
fukubaka0825
9
2.6k
問 1:以下のコンパイラを証明せよ(予告編) #kernelvm / Kernel VM Study Kansai 11th
ytaka23
3
520
LLMの開発と社会実装の今と未来 / AI Builders' Community (ABC) vol.2
pfn
PRO
1
140
さくらのクラウド開発の裏側
metakoma
PRO
3
1.6k
TanStack Start 技術選定の裏側 / Findy-Lunch-LT-TanStack-Start
iktakahiro
1
120
Docker Compose で手軽に手元環境を実現する / Simplifying Local Environments with Docker Compose #CinemaDeLT
nabeo
0
120
Datadog のトライアルを成功に導く技術 / Techniques for a successful Datadog trial
nulabinc
PRO
0
140
LangfuseではじめるAIアプリのLLMトレーシング
codenote
0
150
ユーザーコミュニティが海外スタートアップのDevRelを補完する瞬間
nagauta
0
180
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.1k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Music & Morning Musume
bryan
47
6.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
The Language of Interfaces
destraynor
158
25k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.8k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
How STYLIGHT went responsive
nonsquared
100
5.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.2k
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