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
Sukili による UI Automation
Search
Pine Mizune
June 16, 2015
Programming
0
110
Sukili による UI Automation
社内新卒技術勉強会の資料
Pine Mizune
June 16, 2015
Tweet
Share
More Decks by Pine Mizune
See All by Pine Mizune
多言語対応と絵文字ジェネレーター / i18n of Emoji Generator
pine
0
810
C++ 製グラフィックライブラリ Skia の紹介 / Introduction to the graphics library Skia written by C++
pine
0
1.8k
asyncio + aiohttp で作るウェブサービス / How to develop a web service with asyncio and aiohttp
pine
0
670
Lerna による明示的疎結合アーキテクチャ
pine
1
640
CircleCI 2.0 x JavaScript
pine
3
550
Perl 卒業式
pine
0
340
Android Studio の気になる warnings を抑制する方法まとめ
pine
0
500
Emoji Generator meets Browser Extensions
pine
1
3k
近年の OSS 開発における CI 選択のベストプラクティス
pine
3
4.5k
Other Decks in Programming
See All in Programming
なぜあの開発者はDevRelに伴走し続けるのか / Why Does That Developer Keep Running Alongside DevRel?
nrslib
3
410
All About Angular's New Signal Forms
manfredsteyer
PRO
0
160
スマホから Youtube Shortsを見られないようにする
lemolatoon
27
32k
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
170
Catch Up: Go Style Guide Update
andpad
0
230
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
340
Serena MCPのすすめ
wadakatu
4
1k
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
850
その面倒な作業、「Dart」にやらせませんか? Flutter開発者のための業務効率化
yordgenome03
1
130
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
2
490
Introduce Hono CLI
yusukebe
2
790
バッチ処理を「状態の記録」から「事実の記録」へ
panda728
PRO
0
160
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Bash Introduction
62gerente
615
210k
YesSQL, Process and Tooling at Scale
rocio
173
14k
KATA
mclloyd
32
15k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Writing Fast Ruby
sferik
629
62k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
The Invisible Side of Design
smashingmag
302
51k
Transcript
Sukili による UI Automa.on Pine Mizune
目次 • Sikuli とは ? • Sikuli が解決する問題
• Sikuli を実際に使ってみる • Sikuli の技術 • JRuby から Sikuli を呼び出す 2
Sikuli とは ? • UI 操作を自動化するツール・ライブラリ • クロスプラットフォーム
ü Windows / Mac / Linux • 画像認識ベース ü 操作対象の内部構造は問わない 3
4
Sikuli が解決する問題 5 • 複雑・面倒な操作の自動化 ü GUI
操作が必要でも自動化できる • 高レイヤな UI テストの実現 • 実際の閲覧環境に近い形でテスト可能 • マウス・キーボードの入力も再現
Sikuli を実際に使ってみる 6 • Windows 上で Slack クライアントを自動操作
ü 頭が貧弱なので、良い例が思いつかなかった ü 本当は API が存在しないものでやると良い
Sikuli の技術 7 Java.awt.Robot Jython OpenCV Tesseract OCR
Sikuli Java API ※ How Sikuli Works: hSp://doc.sikuli.org/devs/system-‐design.html?highlight=jni
JRuby から Sikuli を呼び出す 8
JRuby から Sikuli を呼び出す 9 • Sikuli API
はJava API として提供 ü 公式に Jython, JRuby をサポート ü もちろん Java から直接も OK u (余談) JRuby が最近熱い • JRuby 1.7 -‐> 9K … 謎 Version UP
JRuby から Sikuli を呼び出すデモ 10 • 最近 API
が廃止された Skype を自動操作 ü Microsob 社は頭が悪いの ??? • チャットを開いて自動投稿 ü もう Slack でよいので、時遅し
None