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
FindElementできない画面のElementをFindした方法そこから発展していくテス...
Search
satoryo
December 05, 2020
Technology
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
FindElementできない画面のElementをFindした方法 そこから発展していくテスト自動化
satoryo
December 05, 2020
Other Decks in Technology
See All in Technology
Code for Security プロジェクト紹介 2026年10月
yu23ki14
0
110
Post AI時代のリファクタリング実践記 / Refactoring in the post AI era
kaminashi
1
290
10年後、Engineering 行為を剥奪されるとして、わたしたちは、どう、何を創ればいいだろうか。 / If Engineering Is Taken Away in 10 Years, How and What Should We Create?
bitkey
PRO
1
210
『SAR衛星データ解析入門』のご紹介とその応用
syuchimu
0
120
データエンジニアの次の戦場は "プロセスエンジニアリング"
sansantech
PRO
1
110
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
670
Active Record Connection Adaptersにおける長年の課題に再び取り組む
yahonda
0
200
Running Kotlin + Quarkus with Lambda
nealle
1
4k
DGX Spark でどこまでハッキングができるのか?
kash1064
3
1.4k
S3 Filesで挑む! 八戸せんべい汁の食べ頃問題
usanchuu
0
120
しろおびから始める!ログ活用の第一歩
shumei_ito
0
960
Kiro Crewをはじめよう
kizawa2020
1
160
Featured
See All Featured
Being A Developer After 40
akosma
92
590k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Believing is Seeing
oripsolob
1
250
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
760
Large-scale JavaScript Application Architecture
addyosmani
516
110k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
550
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
630
Exploring anti-patterns in Rails
aemeredith
4
540
Visualization
eitanlees
153
17k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
440
Transcript
Copyright © 2020 WingArc1st Inc. All Rights Reserved. ソフトウェアプロセス&品質改善部 DEQIG
Automation T 佐藤 亮 FindElementできない画⾯のElementを Findした⽅法 そこから発展していくテスト⾃動化 ソフトウェアテスト⾃動化カンファレンス2020
Copyright © 2020 WingArc1st Inc. All Rights Reserved. ⾃⼰紹介 2
名前︓佐藤 亮 (さとう りょう)26歳 所属︓ウイングアーク1st株式会社 ソフトウェアプロセス&品質改善部 DEQI G (Data EmpowermentQuality Improvement Group) Automation Team 兼 MBQI G (MotionBoardQuality Impronement Group) 出⾝地︓北海道釧路市 私のミッション︓ ⾃動テスト⽀援、担当製品のテスト、品質改善 今⽇は釧路市からお届けします
Copyright © 2020 WingArc1st Inc. All Rights Reserved. Automation Teamの⽴ち位置
3 プロダクトA GMG QA プロダクトC GMG QA プロダクトB GMG QA Automation Team
Copyright © 2020 WingArc1st Inc. All Rights Reserved. 今回の主役の製品 •
データを集約、可視化、そして アクションにつなげるBIダッ シュボード製品 4 集計など様々な処理をする サーバー サーバーからの情報を表⽰する クライアント
Copyright © 2020 WingArc1st Inc. All Rights Reserved. Copyright ©
2020 WingArc1st Inc. All Rights Reserved. UIテスト⾃動化がゼロだった経緯
Copyright © 2020 WingArc1st Inc. All Rights Reserved.
Copyright © 2020 WingArc1st Inc. All Rights Reserved. Selenium IDEで操作してみた
Copyright © 2020 WingArc1st Inc. All Rights Reserved. Copyright ©
2020 WingArc1st Inc. All Rights Reserved. 理想
Copyright © 2020 WingArc1st Inc. All Rights Reserved. 9
Copyright © 2020 WingArc1st Inc. All Rights Reserved. 10 それぞれのアイテムごとにオブジェクトが分かれていて
Seleniumからでも操作できる︕
Copyright © 2020 WingArc1st Inc. All Rights Reserved.
Copyright © 2020 WingArc1st Inc. All Rights Reserved. Id =
view
Copyright © 2020 WingArc1st Inc. All Rights Reserved. Id =
view Id = view
Copyright © 2020 WingArc1st Inc. All Rights Reserved. Copyright ©
2020 WingArc1st Inc. All Rights Reserved. 現実
Copyright © 2020 WingArc1st Inc. All Rights Reserved.
Copyright © 2020 WingArc1st Inc. All Rights Reserved. 1枚のcanvasにグラフや地図などを お絵描きしている
Copyright © 2020 WingArc1st Inc. All Rights Reserved. なんとかならないものなのか・・・ •
QAでは太⼑打ちできない・・・ • 内部コードを触れる事ができる⼈はいない • 開発チームとMTGをしてみた 17
Copyright © 2020 WingArc1st Inc. All Rights Reserved. サーバー側での処理 18
サーバー
Copyright © 2020 WingArc1st Inc. All Rights Reserved. サーバー側での処理 19
このDBの情報を取得して計算をして・・・ グラフは画⾯の右側に表⽰して・・・ ボタンアイテムはグラフの左側に表⽰して・・・ サーバー
Copyright © 2020 WingArc1st Inc. All Rights Reserved. サーバー側での処理 20
このDBの情報を取得して計算をして・・・ グラフは画⾯の右側に表⽰して・・・ ボタンアイテムはグラフの左側に表⽰して・・・ ここに座標の情報がある︕ この情報を取得し、座標情報をもとにSeleniumでクリック操作ができる︕ サーバー
Copyright © 2020 WingArc1st Inc. All Rights Reserved.
Copyright © 2020 WingArc1st Inc. All Rights Reserved. 22
Copyright © 2020 WingArc1st Inc. All Rights Reserved. 23 画⾯上に表⽰されてあるグラフや表、ボタンをJSON
形式で出⼒する
Copyright © 2020 WingArc1st Inc. All Rights Reserved. このJSONには座標などの情報が ⼊っているため
この情報を利⽤してSeleniumで クリックする︕
Copyright © 2020 WingArc1st Inc. All Rights Reserved. Copyright ©
2020 WingArc1st Inc. All Rights Reserved. UIの⾃動操作が可能になった!!
Copyright © 2020 WingArc1st Inc. All Rights Reserved. さらに(⾃動化施策その2) 26
Copyright © 2020 WingArc1st Inc. All Rights Reserved. さらに(⾃動化施策その2) 27
Copyright © 2020 WingArc1st Inc. All Rights Reserved. さらに(⾃動化施策その2) •
チャートや明細表の値をJSONで出⼒してもらう機能も実装 • BVTで利⽤できる(バージョンアップ前とバージョンアップ後で差異がない ことがわかる) • システム設定の情報もJSONでわかる(マイグレーションテストで利⽤でき る) 28 ⾃動テストができる範囲が広がった︕
Copyright © 2020 WingArc1st Inc. All Rights Reserved. さらに(⾃動化施策その3) •
ボードをリロードし、描画完了までの時間を計測する検証 • ⼈間の⽬と反射神経を利⽤し、ストップウォッチで計測する 29 クリック 描画完了 計測開始 計測終了 集中⼒との戦い・・・
Copyright © 2020 WingArc1st Inc. All Rights Reserved. さらに(⾃動化施策その3) •
ボードにアクセスして描画完了になるまでの時間もサーバー側で保 存できる機能を実装 • 今まではストップウォッチで測る検証をしていたが、Seleniumと Javaを使って⾃動化ができた 30 ⼈間の反射神経に頼る必要がなくなって、精神的にも楽になった︕ ⼯数も5⼈⽇(順調に⾏けば)から1⼈⽇程度に削減できた システム化したことによって、常に同じ条件で測定できる
Copyright © 2020 WingArc1st Inc. All Rights Reserved. 現在 •
いままで⼿動でやっていたリグレッションテストをテスト⾃動化し ていく作業を⾏っている • ⼈間のリソースをもっと必要なところで利⽤できる 31
Copyright © 2020 WingArc1st Inc. All Rights Reserved. 外部発信したことで •
グループのテックブログにMB⾃動化をやったよという記事を書いた • https://medium.com/wingarc/650d2ad85e3a • 別プロダクトの開発者がその記事を⾒てくれた • そのプロダクトでも同じような⾃動化を実装できた • 実績があったため受け⼊れてくれた • すばやい⾃動化の実装ができた(ノウハウがあったから) 32 AutomationTeamのミッションである プロダクト横断での⾃動化ができている︕ 「wingarc1st medium」で検索︕︕
Copyright © 2020 WingArc1st Inc. All Rights Reserved. まとめ •
UIテスト⾃動化をゼロからイチにすることができた • 開発チームとの連携で進めることができた • イチにしたことにより、いろんなところで⾃動化を広げることがで きた • BVTやマイグレーションテスト、性能検証 • 他のプロダクトにも同じような仕組みの⾃動化を組み込めた • 実績があったため • ノウハウがあったので素早い⾃動化を実現 33
Copyright © 2020 WingArc1st Inc. All Rights Reserved.