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
中の人が語るテスト自動化SaaSのCS - カスタマーサポート、そしてサクセスへ - STAC...
Search
Meiko Hori
December 05, 2020
1
3.1k
中の人が語るテスト自動化SaaSのCS - カスタマーサポート、そしてサクセスへ - STAC 2020
Meiko Hori
December 05, 2020
Tweet
Share
More Decks by Meiko Hori
See All by Meiko Hori
Chaos Night #1 複雑なシステムへようこそ
meih
0
320
Featured
See All Featured
Optimizing for Happiness
mojombo
376
69k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
7
150
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
4 Signs Your Business is Dying
shpigford
180
21k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Docker and Python
trallard
40
3.1k
Statistics for Hackers
jakevdp
796
220k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Why Our Code Smells
bkeepers
PRO
334
57k
Transcript
中の人が語るテスト自動化SaaSのCS - カスタマーサポート、そしてサクセスへ - ソフトウェアテスト自動化カンファレンス2020 Dec 5th, 2020 Meiko Hori
自己紹介 Meiko Hori 堀 明子 Customer Success Engineer @ Autify
• 略歴 ◦ SIerに十数年所属。客先常駐 SES中心 ◦ アプリ開発/システム運用/プロジェクトリーダー ◦ コロナ禍に初転職、今年 8月からAutifyに参画 • アウトプット ◦ 英語の技術記事の和訳、書籍の翻訳にも挑戦中 ✍ ◦ https://yakst.com/ja/users/meiq/translated
本日お話しする内容 私の所属するAutifyのE2Eテスト自動化プラットフォームを題材に • ユーザーへどのようなサポートを提供し • ユーザーがサービスを活用できているサクセス状態を目指しているか についてお話しします。 [対象外の内容] • Autifyの仕組みやアーキテクチャに関する詳しい話
• カスタマーサクセス一般の話 ご興味のある方はAsk the speakersでお声がけいただくか、最後の参考文献をご覧ください!
E2Eテストの自動化、してますか? 絶賛自動化推進中! いまのところ手動だが、ど うやろうか検討中
E2Eテストの準備、どうですか? あれもやりたい これもやりたい データも環境も 準備に手間がかかる
E2Eテスト、自動化してみていかがですか? 実際やりたいところま で手が回らない できたはできたけど壊れが ち、実行が遅い
自動化したE2Eテスト、順調に回り続けていますか? アプリ改修のたびに コードをメンテするの が面倒 なんだか思いもよらない理 由で失敗する
E2Eテストの自動化、いろいろ大変 導入段階の壁 • テスト目的の明確化、優先度づけ • 何が自動化できて、何が自動化できないのかの切り分け • 自動テスト用のコードの準備 • 実行環境の整備
運用段階の壁 • アプリの変化に追従するコードのメンテナンス • 実行環境のメンテナンス • 壊れやすいテストとの戦い → 専門的なスキルが必要、そもそも対応できる人員がいないという問題
注文の多いウェブアプリのE2Eテスト tesu E2EテストをCIに組み込 んで開発したい 現在は手動でやってるリ グレッションテストを自動 化したい クロスブラウザテストを がっつりやりたい 困難な課題に伴う手間を軽減する上で、SaaSを活用するのはひとつの選択肢
皆様こんにちは Autifyです! IE対応が要る んだけど スマホ実機も ぬるぬる動く SPAも ある程度の速さで回 せないと運用が厳し い
ユーザー環境 Autifyの提供するウェブアプリ向けE2Eテストのサービス テスト作成 • ブラウザ操作がAutifyに記録される • コードを書かなくても直感的にテストシナリ オを作成可能 テスト実行 •
Autify側でご用意したブラウザ環境からテ スト対象アプリへアクセスし、繰り返しテスト を実行可能 • テスト対象アプリにおける変化も軽微なも のならシナリオが自動で追従 テスト対象ウェブアプリ テスト作成 テスト実行 自動テストのシナリオ作成、環境の準備、テストのメンテナンスの負荷を大きく軽減
さて、サービス提供者側の目線になってみると テスト対象 ウェブアプリA ユーザーAさんの場合 モダンSPAをクロスブラウザテス トしたい! テスト対象 ウェブアプリB ユーザーBさんの場合 7,
8年選手の画面をスマホ実機 でテストしたい! テスト対象 ウェブアプリC ユーザーCさんの場合 E2Eテストを開発プロセスに組 み込んで高速実行したい!
あらゆる顧客のE2Eテストをサポートするには 中の人たちが頑張ります! (チャットからいつでもお問い合わせください)
開発チーム CSチーム ようこそ、Autifyのカスタマーサポートへ。 技術的な質問 &調査依頼 TSE &リードメンバー Backlog ユーザー Chat
チャットからはじまる、お問い合わせの旅
カスタマーサポートの流れ 01. テキスト 開発対応 (Engineering) • プロダクトの改修とリ リース • 緊急性の高い障害発
生の場合はより臨機応 変に対応 一次切り分け (CS) • 技術サポートが必要な 内容か、そうでないかを まず判断 (※) • 既存のナレッジや、 チーム内での解決を目 指す 技術的調査 (TSE) • CSで解決できなかった 事象を詳しく調査 • ワークアラウンドがある 場合にはCSへ提供、プ ロダクト改修が必要な 場合には開発対応へ ※機能追加リクエストや契約に関する問い合わせのケースもある
どんなお問い合わせが来るのか サービスの使いかたに関する質問 • このようなテストをしたいのだがどうしたらよいか? ◦ 機能を活用しながらテストの作り方をアドバイス ◦ 例) データドリブンテスト、テストの並列実行、JavaScriptを活用した値の生成 機能に関する要望・リクエスト
• こんな機能が欲しい、こうなったらもっと便利 ◦ プロダクトの改善、新機能開発へ反映 テストが予期せぬ失敗をした • 原因は個々の状況によりさまざま (後述) サポート対応の多くを占める
予期せぬテスト失敗の原因は ❌ レコーディング時は失敗しな いのにAutifyでのテスト実行で 失敗する レコーディング環境とテスト実行 環境に差異に起因する (通信要 件など) ❌
特定のブラウザだけ失敗 ブラウザ固有の問題 ❌ テスト対象の変化が大きく Autifyの追随が難しくなった Autifyが要素の判断材料として いる、要素のDOM上の特徴が 毎回変わってしまう ❌ 顧客の実装特有の挙動 テスト対象のアプリ固有の JavaScriptの実装と競合する ❌ 繰り返しテストを実行してい ると失敗するようになる 状態の変化に起因するもの、テ ストの冪等性が保たれないつく りのもの 環境起因 テスト対象-Autify間起因 テストの作り方に起因
発生した問題の原因 サポート例 予期せぬテストの失敗に対するサポート例 アプリ側で毎回一意な値が入力されることを 想定されていた データなどの状態変化がアプリの動作に影響 している テスト対象のアプリケーションの変化が大き く、Autifyが追随できなくなった 一意な値を生成するJavaScriptをご案内
データの生成・削除なども含めたシナリオの作 り方をご案内 テストシナリオの再レコーディングや、要素を 安定して選択できるようにするワークアラウン ドをご案内 自動テストの課題の本質的な課題には、Autifyを使っても取り組むことになる
提供するサービスの性質上のサポートの難しさ 問題の切り分けの難しさ • ユーザー環境とAutify側の両方にまたがる • Autifyのサービス自体の進化による挙動の変化 問題の再現自体の難しさ • ユーザー環境の状態も変化する ◦
例) アプリのリリース・データの状態 • 問題が解決したことも同様の背景から難しい 難しい問題も多いのだけれども... 解決できたときの喜びはひとしおです ユーザー環境 テスト対象
まとめ Autifyのようなサービスを使っても、自動テストにおける課題は共通で存在する • SaaSの利用は自動テスト実現にあたっての一つの手段である • サービスをいかに活用して自動テストに載せていくかが鍵となる サポート観点でいうと、多様なユーザー環境・テストのニーズに応えるのは容易ではない • 地道ながらもやりがいのあるお仕事 •
ユーザーと対話しながらサービスを活用できている状態(サクセスの形)を考えていく ご興味のある方は是非、弊社採用情報もご覧ください! https://autify.com/ja/careers
01. テキスト 参考資料 ▼FargateとLambdaで作るスケーラブルな E2Eテスト実行基盤 https://speakerdeck.com/doublemarket/building-a-scalable-e2e-test-execution-platform-with-a ws-fargate-and-lambda ▼全てを知りたいと思う人のための「テクニカルサポートエンジニア」という選択肢 https://blog.autify.com/ja/about-tse ▼公用語は英語?
- AutifyのCSチームと開発チームの社内コミュニケーションにおける取り組み https://blog.autify.com/ja/cs-dev-communication
ご清聴ありがとうございました!