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.2k
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
360
What I've learned using mabl
tmasuhara
0
1.2k
Other Decks in Technology
See All in Technology
AI前提のサービス運用ってなんだろう?
ryuichi1208
8
1.4k
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
生成AIが変えるデータ分析の全体像
ishikawa_satoru
0
170
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
450
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
強いチームと開発生産性
onk
PRO
35
12k
"とにかくやってみる"で始めるAWS Security Hub
maimyyym
2
100
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
540
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
190
あなたの知らない Function.prototype.toString() の世界
mizdra
PRO
2
310
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
What's new in Ruby 2.0
geeforr
343
31k
Being A Developer After 40
akosma
87
590k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Building Adaptive Systems
keathley
38
2.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
How to train your dragon (web standard)
notwaldorf
88
5.7k
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