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
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Sukili による UI Automation
社内新卒技術勉強会の資料
Pine Mizune
June 16, 2015
More Decks by Pine Mizune
See All by Pine Mizune
多言語対応と絵文字ジェネレーター / i18n of Emoji Generator
pine
0
870
C++ 製グラフィックライブラリ Skia の紹介 / Introduction to the graphics library Skia written by C++
pine
0
2k
asyncio + aiohttp で作るウェブサービス / How to develop a web service with asyncio and aiohttp
pine
0
690
Lerna による明示的疎結合アーキテクチャ
pine
1
680
CircleCI 2.0 x JavaScript
pine
3
570
Perl 卒業式
pine
0
370
Android Studio の気になる warnings を抑制する方法まとめ
pine
0
520
Emoji Generator meets Browser Extensions
pine
1
3k
近年の OSS 開発における CI 選択のベストプラクティス
pine
3
4.5k
Other Decks in Programming
See All in Programming
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
880
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
180
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
270
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
260
そのテスト、説明できますか?~LWテスト戦略FW~のご紹介
nakahara
0
150
その問い、本当に正しいですか?AI時代のエンジニアに必要な哲学と認知科学 / ai-philosophy-cognitive-science
minodriven
11
5.8k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
260
JavaDoc 再入門
nagise
1
370
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.7k
net-httpのHTTP/2対応について
naruse
0
500
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4.3k
Creating Composable Callables in Contemporary C++
rollbear
0
150
Featured
See All Featured
For a Future-Friendly Web
brad_frost
183
10k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
400
Context Engineering - Making Every Token Count
addyosmani
9
970
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
440
How to Talk to Developers About Accessibility
jct
2
240
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
200
Rails Girls Zürich Keynote
gr2m
96
14k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
170
Ruling the World: When Life Gets Gamed
codingconduct
0
260
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
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