stac2019 What I've learned using mabl
by
Takahide MASUHARA
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
mabl導⼊記 masuhara (株式会社ピースオブケイク) 1
Slide 2
Slide 2 text
⾃⼰紹介 増原賢秀(ますはら たかひで) @masalajpn Test Automation Engineer at 株式会社ピースオブケイク(以降、ピ社) Organizer of #SeConfTokyo CyberAgent -> 無職 -> freee -> ピ 2
Slide 3
Slide 3 text
今⽇話すこと mablを1年弱運⽤してきて得た諸々 3
Slide 4
Slide 4 text
テスト対象サービス 記事を書いて販売したり、他のクリエイターを⽀援したりできます Web(PC, mobile), モバイルアプリ(iOS/android) #ソフトウェアテスト をよろしくお願いします 今⽇はPC webの話をします 4
Slide 5
Slide 5 text
開発チーム ⼈数構成 noteプロダクトチーム Serverside/Frontend 約16名 SRE 約3名 Mobile APP 約2名 ML 約4名 デザイン 約6名 Test Automation Engineer 1名 (私) 過去にpuppeteerで主要なURLを開くのを⾃動化→動かなくなって引退 毎営業⽇productionデプロイ やってます 5
Slide 6
Slide 6 text
mablの簡単な紹介 ブラウザで使えるE2E⾃動テスト作成&実⾏saas mabl trainer(chrome extension)によるtest作成機能 mablのサーバー上でtestを並列実⾏ auto-healingで利⽤するロケータを⾃動修正 ⾒た⽬の変更もoption的に教えてくれる ピ社は⽇本で最初の有償顧客 6
Slide 7
Slide 7 text
なぜsaasなのか エンジニア積極採⽤中(テストエンジニアの枠はまだない) E2Eテストの運⽤って⼤変 シナリオに問題がなくても落ちることがある chromedriverが古い インスタンスの調⼦が悪い 必要な⾃動テストはE2Eだけじゃない E2Eの運⽤をしつつ他のレイヤーのテストに⼿を出せるようにしたい そのためにはE2Eの運⽤コストをできるだけ下げたい ダメなら課⾦を⽌めればいい 7
Slide 8
Slide 8 text
なぜmablなのか ユーザー数が増えてもプランが上がらない mablを開発者にオープンにできる mabl trainerが使いやすい ブラウザで(割と)楽にシナリオ作成とメンテができそう 変数作成やapiによる実⾏、slack連携などE2Eメンテに⼗分な機能が揃っていた 安定して動いていた これ⼤事 8
Slide 9
Slide 9 text
これだけ知っとくといいよ! mabl⽤語集 test テストのシナリオ。ブラウザで実⾏する操作が列挙されている plan 実⾏環境、実⾏するtest、落ちたときリトライするか などの設定がまとまったもの flow testで実⾏する操作をまとめたもの。これが使えれば初⼼者卒業 9
Slide 10
Slide 10 text
ピ社では test (約20) signup, 記事投稿, マガジン作成, 有料記事を購⼊ plan (約3) dev兼staging環境, production 1実⾏で約5min.chromeのみ flow (約25) signup, ID作成, 記事投稿まわりなどの共通処理 10
Slide 11
Slide 11 text
デモのお時間 シナリオ作成とクラウド実⾏の様⼦をお⾒せします 11
Slide 12
Slide 12 text
こんな機能も使ってます datatableで定義した値をつかってdata-driven testing ⼀つのtestで複数の条件のテストが可能 ピ社ではnote記事内のコンテンツembedの確認に利⽤ mabl mailboxでサービスから送信されたメールの受信確認 12
Slide 13
Slide 13 text
testsの実⾏タイミング dev兼staging環境にデプロイされたとき productionデプロイされたとき jenkinsのデプロイjobの中でplanを指定してdeployment apiを叩く 13
Slide 14
Slide 14 text
⼀ヶ⽉間の状況 こーんな感じ 14
Slide 15
Slide 15 text
安定して動いてる? こーんな感じ 15
Slide 16
Slide 16 text
auto-healingってどう? 運⽤開始してから26回auto-healが動いている 16
Slide 17
Slide 17 text
良いところ1 chrome extensionが使いやすい ステップ毎のスクリーンショットが撮られていて、トラブルシューティングがしやすい アップデートが⾮常に頻繁に⾏われる。最近特にリリースが多い https://help.mabl.com/v1.0/blog/ で更新をチェック! バグの報告から対応までが速い jenkinsからの⾃動実⾏設定もcurlコマンドビルダーがあるので楽 ドキュメントやヘルプ動画が充実しているし、更新頻度が⾼い 実⾏環境のメンテをしなくて良いの最⾼ 開発者に落ちたtestの修正してもらった mabl mailbox便利 みんなが⼤好きなDark modeがある 17
Slide 18
Slide 18 text
良いところ2 プロダクト改善アイデアを出せる slack通知の改善 plan実⾏が連続して成功した場合に通知 plan実⾏開始時に通知 18
Slide 19
Slide 19 text
これから?なところ(⼀部) サーバーが海外にあるので⼿元で動いてもmabl上で実⾏するとエラーになることがある mablに向かない画⾯がある ⾃動化を諦めたシナリオ、あります(動画note) メンテする⼈が増えたらどうなる?多⼈数でのメンテに向いてるのか? 現⾏の仕様だと、あまり向いてるとはいえない 19
Slide 20
Slide 20 text
これからmabl⼤⾂になる皆様へ1 test, plan, flowなどmablで使う機能の理解 ツールにあったシナリオを⾃動化する mablサポート、カスタマーサクセスとのやりとりは英語。ただしテキストベースのコミ ュニケーション(slack, intercom chat, mail)がメインです サポートとのやりとりで、時差によるタイムラグが発⽣する オンボーディング時はストレスが多少あるかもしれないが、運⽤が始まればそこま で⼤きな問題にはならないと思っています 20
Slide 21
Slide 21 text
これからmabl⼤⾂になる皆様へ2 ブラウザ⾃動テストのお作法を理解する 機能的に不⼗分なところでJavaScriptを使う、共通処理はflowにまとめておく、ト ラブルシューティングなど 積極的にmablプロダクト改善サイクルに関わる バグレポート submit feature idea 検証の時間を⼗分に取る。trial期間は他の仕事は調整して、ひたすら触りまくる 実⾏結果は早い段階で開発者がいるslackの部屋に積極的に通知 存在を他の開発者に知ってもらうきっかけづくり testが落ちたときのmabl⼤⾂のリアクションやtest修正の思考過程、mablサポートとの やりとりをslackに積極的に通知 こういうときに落ちるんだと他の開発者に知ってもらうきっかけづくり 可能なら検証・導⼊は複数⼈で担当しましょう 21
Slide 22
Slide 22 text
これからmabl⼤⾂になる皆様へ3 product updateの内容を⼀⾔でまとめてslackに書く 英語はあまり読まれないと思うので 22
Slide 23
Slide 23 text
これからの課題 what (not) to test を決める CI連携。PRベースで実⾏する環境をどうするか(難易度⾼そう) mablのメンテを他のエンジニアができるようにする E2Eの外に出る 23
Slide 24
Slide 24 text
mablのメンテを他のエンジニアができるようにする 教材(google slide)を作って全4回。参加者約4名。ハンズオンがメイン そこそこ好評。開発者のオンボーディングに⼊れたい。 24
Slide 25
Slide 25 text
わかったこと mablも完璧ではない ⾃前で実装しようがツール使おうが運⽤は⼿間がかかる saasでもプロダクトフィードバックをすることで変えていける部分はある ⾃前でシステムを構築する前に検討の価値はあると思う ⼀⼈でやらないほうがいいです 25
Slide 26
Slide 26 text
まとめ ピ社でもまだまだ試⾏錯誤中です 試して失敗して学びましょう 26
Slide 27
Slide 27 text
special thanks mabl検証から導⼊、運⽤フェーズまで信じて任せてくれたCTO今さんはじめピ社のみな さん #STAC2019 実⾏委員の皆様 27
Slide 28
Slide 28 text
この辺はきいてください 導⼊までの流れ ざっくり費⽤感 他ツールとの⽐較 28
Slide 29
Slide 29 text
ありがとうございました ask the speakerブースでお待ちしてます 29