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
890
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
510
アラートなどの割り込み表示を制御する
srea
1
500
DMM 次世代SDK開発チーム
srea
0
400
OSSと私
srea
1
490
ソフトウェア品質を支える E2Eテストのパイプライン作り
srea
3
3.2k
Other Decks in Technology
See All in Technology
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
280
Terraform CI/CD パイプラインにおける AWS CodeCommit の代替手段
hiyanger
1
240
第1回 国土交通省 データコンペ参加者向け勉強会③- Snowflake x estie編 -
estie
0
120
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
150
Making your applications cross-environment - OSCG 2024 NA
salaboy
0
180
ISUCONに強くなるかもしれない日々の過ごしかた/Findy ISUCON 2024-11-14
fujiwara3
8
860
スクラムチームを立ち上げる〜チーム開発で得られたもの・得られなかったもの〜
ohnoeight
2
350
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
490
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
ハイパーパラメータチューニングって何をしているの
toridori_dev
0
140
Lexical Analysis
shigashiyama
1
150
Lambda10周年!Lambdaは何をもたらしたか
smt7174
2
110
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Designing Experiences People Love
moore
138
23k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Code Reviewing Like a Champion
maltzj
520
39k
Producing Creativity
orderedlist
PRO
341
39k
Writing Fast Ruby
sferik
627
61k
Faster Mobile Websites
deanohume
305
30k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Designing for humans not robots
tammielis
250
25k
The Invisible Side of Design
smashingmag
298
50k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
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