Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Autifyは簡単に自動テストを作れるのか / Can Autify easily creat...
Search
fumi
September 29, 2022
Technology
92
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Autifyは簡単に自動テストを作れるのか / Can Autify easily create automated tests
fumi
September 29, 2022
More Decks by fumi
See All by fumi
JMeterを使ったときの思考と行動
fumiiix
0
40
Other Decks in Technology
See All in Technology
CTO Night|NotionのAIエージェントとFDE
kzkhykw1991
0
230
[JAWS-UG彩の国埼玉#12]そろそろ準備する?re:Invent2026をやさしく解説 / reinvent2026-sainokuni
sh_fk2
1
360
QA4AI 2026-Oct 生成AI時代の品質保証
tokuty
1
890
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
170
Refining Active Record
shugo
0
160
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
140
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
160
日本語に強いオープンな大規模言語モデル「LLM-jp」
odashi
5
1.2k
Getting Started with Google Antigravity
glaforge
0
320
Benchmarking Disaggregated Serving on vLLM + Dynamo with a Real Coding-Agent Workload
nttcom
1
200
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
660
AI導入は済んだ。次は統制を作り替える番だ_AI×開発組織 Summit 2026
techtekt
PRO
0
360
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
330
Building Applications with DynamoDB
mza
96
7.2k
Building Adaptive Systems
keathley
44
3.3k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Optimizing for Happiness
mojombo
378
71k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
My Coaching Mixtape
mlcsv
0
360
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
570
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
5.3k
Documentation Writing (for coders)
carmenintech
77
5.6k
Transcript
Autifyは簡単に自動テストを作れるのか 2022/9/29 Masafumi Nishiwaki
目次 • はじめに • テーマ • Autifyの利用事例 • Autifyで簡単に作れる自動テストとは? •
シナリオに含まれるJSステップの割合 • 補足事項 ◦ シナリオの実装概要 ◦ よく使ったJSステップ3選 ◦ シナリオの実行時間 • 最後に
はじめに • 本資料はAutifyの使い方に関する内容は含まれていません • 紹介する事例における仮定・実績は、他のプロダクトに当てはまらない場合があり ますのでご了承ください
テーマ 皆さん自動テストの経験はありますか? Autifyで自動テストを作った事例を紹介します * Autify. Autify(オーティファイ), AIを用いたソフトウェアテスト自動化プラットフォーム - Autify(オーティファイ).
https://autify.com/ja/, (参照2022-09-28)
Autifyの利用事例 • サービス概要 ◦ HRTech企業様のダイレクトリクルーティングサービス ◦ 複数のプロダクトによりサービスが構成されている
• 自動テスト概要 ◦ Webの全画面が正常に表示されているか確認するテスト ◦ 2022年にSeleniumからAutifyへ移行
Autifyで簡単に作れる自動テストとは? 今回はシナリオに含まれるJSステップの割合が少ないものと仮定し、 割合ごとの難易度を設定しました ※1
※1:JSステップはAutifyのシナリオ内でユーザーが任意のJavaScriptを記述できる機能となります ※2:割合の区分は後述するシナリオの実装状況を元に発表者が独自に設定したものとなります ※3:割合が5%以上あるいは課題の解決が難しい場合、自動テスト対象の見直しが必要になるかもしれません JSステップの割合 ※2 難易度 0%~1% 【初級】完全試合😎 1%~2.5% 【中級】大きな問題なくできた😃 2.5%~5% 【上級】少し苦労した😓 5%~ 【チャレンジ】簡単に作れるはずでは😭 ※3
シナリオに含まれるJSステップの割合 一部のJSステップが5%に近いですが、全体では2%未満に収まっています 複雑なシナリオを必要としないため、殆どがレコーディングで実装できました プロダクト シナリオ ステップ JSステップ 割合 Red 22
862 8 0.93% Red-SP 20 662 7 1.06% Blue 28 575 5 0.87% Yellow 8 440 5 1.14% Yellow-SP 8 456 7 1.54% Orange 5 249 12 4.82% Total 91 3244 44 1.36%
補足事項:シナリオの実装概要 • 工数 ◦ 1画面のレコーディングは1~5分で見積もり ※JSステップの実装時間は別途計上 •
シナリオの分け方 ◦ 運用とメンテナンス性を考慮し、機能単位でシナリオを実装 ◦ 1シナリオのステップ数は150前後に収めた ※200ステップ以上はAutifyサポート外となる可能性があるため • 実装内容 ◦ 画面遷移とアサーション(画面を判別できる見出しなどの比較処理)が中心 ◦ ログイン処理などはステップグループを使い共通化
補足事項:よく使ったJSステップ3選 全てAutify JavaScript Snippetsで提供されているコードを流用しています ※JSステップで実現したい処理によってはコードを流用できない場合があります ブラウザのページを戻る window.history.back(); 表の先頭行となる要素をクリック document.querySelector("content
tbody tr").click(); ポップアップ要素が存在する場合、ポップアップの閉じるリンクをクリック var pu = document.querySelector("div.pu-widget__content"); if(pu){ document.querySelector(".pu-close").click(); }
補足事項:シナリオの実行時間 Autifyの並列実行により、実行時間が従来の約1/3まで短縮されました👍
最後に 今回の事例では比較的簡単に自動テストを作ることができました Autifyは自動テスト未経験者の不安を払拭してくれる、経験者は実装や運用がより便利 になる良いツールだと感じました 有料ツールですので、利用機会に恵まれた方は積極的に触ってみることをお勧めしま す!