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
stac2019 What I've learned using mabl
Search
Takahide MASUHARA
November 30, 2019
Technology
0
3.1k
stac2019 What I've learned using mabl
Takahide MASUHARA
November 30, 2019
Tweet
Share
More Decks by Takahide MASUHARA
See All by Takahide MASUHARA
[mablers_JP]Ubieでのmablユースケース 〜メトリクスを添えて〜
tmasuhara
0
300
What I've learned using mabl
tmasuhara
0
1.2k
Other Decks in Technology
See All in Technology
RailsConf 2024 Keynote "Startups on Rails in 2024"
irinanazarova
0
790
TypescriptでのContextualな構造化ロギングと社内全体への導入
leveragestech
3
580
Kaggleで学ぶ系列データのための深層学習モデリング
yu4u
7
1.7k
B2C、B2B プロダクトマネジメントの違い(および思考の罠) / B2C, B2B PM and reduction fallacy
ykmc09
5
2.3k
生成AIがもたらす変革 / GitHubGalaxy_CyberAgent
cyberagentdevelopers
PRO
2
110
AWS アーキテクチャ作図入門/aws-architecture-diagram-101
ma2shita
16
6.7k
サービス開発におけるVue3とTypeScriptの親和性について
tsukuha
10
1.8k
「できる!」を増やすGitHub Copilot活用法 / How to use GitHub Copilot to expand your possibilities
sansan_randd
1
240
NewSQL Landscape
oracle4engineer
PRO
5
3.2k
多言語化対応における TypeScript の型定義を通して開発のしやすさについて考えた / TSKaigi TypeScript Multilingualization
nabeliwo
2
390
Google Cloud Next '24 Recap in ZOZO AIにより変わる開発 運用/Development and operation changed by AI
gachimuchiengineer
0
190
kcp: Kubernetes APIs Are All You Need #techfeed_live / TechFeed Experts Night 28th
ytaka23
1
190
Featured
See All Featured
Teambox: Starting and Learning
jrom
128
8.4k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
The Mythical Team-Month
searls
217
42k
Creatively Recalculating Your Daily Design Routine
revolveconf
211
11k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
34
6.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
9
1.3k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
323
20k
The Art of Programming - Codeland 2020
erikaheidi
43
12k
Agile that works and the tools we love
rasmusluckow
325
20k
Building a Scalable Design System with Sketch
lauravandoore
457
32k
Transcript
mabl導⼊記 masuhara (株式会社ピースオブケイク) 1
⾃⼰紹介 増原賢秀(ますはら たかひで) @masalajpn Test Automation Engineer at 株式会社ピースオブケイク(以降、ピ社) Organizer
of #SeConfTokyo CyberAgent -> 無職 -> freee -> ピ 2
今⽇話すこと mablを1年弱運⽤してきて得た諸々 3
テスト対象サービス 記事を書いて販売したり、他のクリエイターを⽀援したりできます Web(PC, mobile), モバイルアプリ(iOS/android) #ソフトウェアテスト をよろしくお願いします 今⽇はPC webの話をします 4
開発チーム ⼈数構成 noteプロダクトチーム Serverside/Frontend 約16名 SRE 約3名 Mobile APP 約2名
ML 約4名 デザイン 約6名 Test Automation Engineer 1名 (私) 過去にpuppeteerで主要なURLを開くのを⾃動化→動かなくなって引退 毎営業⽇productionデプロイ やってます 5
mablの簡単な紹介 ブラウザで使えるE2E⾃動テスト作成&実⾏saas mabl trainer(chrome extension)によるtest作成機能 mablのサーバー上でtestを並列実⾏ auto-healingで利⽤するロケータを⾃動修正 ⾒た⽬の変更もoption的に教えてくれる ピ社は⽇本で最初の有償顧客 6
なぜsaasなのか エンジニア積極採⽤中(テストエンジニアの枠はまだない) E2Eテストの運⽤って⼤変 シナリオに問題がなくても落ちることがある chromedriverが古い インスタンスの調⼦が悪い 必要な⾃動テストはE2Eだけじゃない E2Eの運⽤をしつつ他のレイヤーのテストに⼿を出せるようにしたい そのためにはE2Eの運⽤コストをできるだけ下げたい ダメなら課⾦を⽌めればいい
7
なぜmablなのか ユーザー数が増えてもプランが上がらない mablを開発者にオープンにできる mabl trainerが使いやすい ブラウザで(割と)楽にシナリオ作成とメンテができそう 変数作成やapiによる実⾏、slack連携などE2Eメンテに⼗分な機能が揃っていた 安定して動いていた これ⼤事 8
これだけ知っとくといいよ! mabl⽤語集 test テストのシナリオ。ブラウザで実⾏する操作が列挙されている plan 実⾏環境、実⾏するtest、落ちたときリトライするか などの設定がまとまったもの flow testで実⾏する操作をまとめたもの。これが使えれば初⼼者卒業 9
ピ社では test (約20) signup, 記事投稿, マガジン作成, 有料記事を購⼊ plan (約3) dev兼staging環境,
production 1実⾏で約5min.chromeのみ flow (約25) signup, ID作成, 記事投稿まわりなどの共通処理 10
デモのお時間 シナリオ作成とクラウド実⾏の様⼦をお⾒せします 11
こんな機能も使ってます datatableで定義した値をつかってdata-driven testing ⼀つのtestで複数の条件のテストが可能 ピ社ではnote記事内のコンテンツembedの確認に利⽤ mabl mailboxでサービスから送信されたメールの受信確認 12
testsの実⾏タイミング dev兼staging環境にデプロイされたとき productionデプロイされたとき jenkinsのデプロイjobの中でplanを指定してdeployment apiを叩く 13
⼀ヶ⽉間の状況 こーんな感じ 14
安定して動いてる? こーんな感じ 15
auto-healingってどう? 運⽤開始してから26回auto-healが動いている 16
良いところ1 chrome extensionが使いやすい ステップ毎のスクリーンショットが撮られていて、トラブルシューティングがしやすい アップデートが⾮常に頻繁に⾏われる。最近特にリリースが多い https://help.mabl.com/v1.0/blog/ で更新をチェック! バグの報告から対応までが速い jenkinsからの⾃動実⾏設定もcurlコマンドビルダーがあるので楽 ドキュメントやヘルプ動画が充実しているし、更新頻度が⾼い
実⾏環境のメンテをしなくて良いの最⾼ 開発者に落ちたtestの修正してもらった mabl mailbox便利 みんなが⼤好きなDark modeがある 17
良いところ2 プロダクト改善アイデアを出せる slack通知の改善 plan実⾏が連続して成功した場合に通知 plan実⾏開始時に通知 18
これから?なところ(⼀部) サーバーが海外にあるので⼿元で動いてもmabl上で実⾏するとエラーになることがある mablに向かない画⾯がある ⾃動化を諦めたシナリオ、あります(動画note) メンテする⼈が増えたらどうなる?多⼈数でのメンテに向いてるのか? 現⾏の仕様だと、あまり向いてるとはいえない 19
これからmabl⼤⾂になる皆様へ1 test, plan, flowなどmablで使う機能の理解 ツールにあったシナリオを⾃動化する mablサポート、カスタマーサクセスとのやりとりは英語。ただしテキストベースのコミ ュニケーション(slack, intercom chat, mail)がメインです
サポートとのやりとりで、時差によるタイムラグが発⽣する オンボーディング時はストレスが多少あるかもしれないが、運⽤が始まればそこま で⼤きな問題にはならないと思っています 20
これからmabl⼤⾂になる皆様へ2 ブラウザ⾃動テストのお作法を理解する 機能的に不⼗分なところでJavaScriptを使う、共通処理はflowにまとめておく、ト ラブルシューティングなど 積極的にmablプロダクト改善サイクルに関わる バグレポート submit feature idea 検証の時間を⼗分に取る。trial期間は他の仕事は調整して、ひたすら触りまくる
実⾏結果は早い段階で開発者がいるslackの部屋に積極的に通知 存在を他の開発者に知ってもらうきっかけづくり testが落ちたときのmabl⼤⾂のリアクションやtest修正の思考過程、mablサポートとの やりとりをslackに積極的に通知 こういうときに落ちるんだと他の開発者に知ってもらうきっかけづくり 可能なら検証・導⼊は複数⼈で担当しましょう 21
これからmabl⼤⾂になる皆様へ3 product updateの内容を⼀⾔でまとめてslackに書く 英語はあまり読まれないと思うので 22
これからの課題 what (not) to test を決める CI連携。PRベースで実⾏する環境をどうするか(難易度⾼そう) mablのメンテを他のエンジニアができるようにする E2Eの外に出る 23
mablのメンテを他のエンジニアができるようにする 教材(google slide)を作って全4回。参加者約4名。ハンズオンがメイン そこそこ好評。開発者のオンボーディングに⼊れたい。 24
わかったこと mablも完璧ではない ⾃前で実装しようがツール使おうが運⽤は⼿間がかかる saasでもプロダクトフィードバックをすることで変えていける部分はある ⾃前でシステムを構築する前に検討の価値はあると思う ⼀⼈でやらないほうがいいです 25
まとめ ピ社でもまだまだ試⾏錯誤中です 試して失敗して学びましょう 26
special thanks mabl検証から導⼊、運⽤フェーズまで信じて任せてくれたCTO今さんはじめピ社のみな さん #STAC2019 実⾏委員の皆様 27
この辺はきいてください 導⼊までの流れ ざっくり費⽤感 他ツールとの⽐較 28
ありがとうございました ask the speakerブースでお待ちしてます 29