Enviar pesquisa
Carregar
Sikuli x 知っていますか?
•
10 gostaram
•
13,361 visualizações
M
Masuo Ohara
Seguir
2015/10/20のSelenium勉強会@サイボウズの発表資料です。 http://connpass.com/event/20779/
Leia menos
Leia mais
Software
Vista de apresentação de diapositivos
Denunciar
Compartilhar
Vista de apresentação de diapositivos
Denunciar
Compartilhar
1 de 20
Recomendados
3Dプリンタを使おう - 20131110
3Dプリンタを使おう - 20131110
mgwsuzuki
kawaz-anthology-2 plan
kawaz-anthology-2 plan
tuna cook
Cocoa勉強会201302
Cocoa勉強会201302
Satoshi Oomori
日本列島VRとHoleLenz
日本列島VRとHoleLenz
Voxel Kei
Inkscapeで折り図を描く〜1つの図を描く〜
Inkscapeで折り図を描く〜1つの図を描く〜
daidai_avocado
LibreOffice : Drawをもっと使いこなそう
LibreOffice : Drawをもっと使いこなそう
Masataka Kondo
ピタゴラスイッチでAWS自動化(JAWS-UG-LT @shimy_net )
ピタゴラスイッチでAWS自動化(JAWS-UG-LT @shimy_net )
崇之 清水
Inkscapeで折り図を描く〜折り図を並べる〜
Inkscapeで折り図を描く〜折り図を並べる〜
daidai_avocado
Recomendados
3Dプリンタを使おう - 20131110
3Dプリンタを使おう - 20131110
mgwsuzuki
kawaz-anthology-2 plan
kawaz-anthology-2 plan
tuna cook
Cocoa勉強会201302
Cocoa勉強会201302
Satoshi Oomori
日本列島VRとHoleLenz
日本列島VRとHoleLenz
Voxel Kei
Inkscapeで折り図を描く〜1つの図を描く〜
Inkscapeで折り図を描く〜1つの図を描く〜
daidai_avocado
LibreOffice : Drawをもっと使いこなそう
LibreOffice : Drawをもっと使いこなそう
Masataka Kondo
ピタゴラスイッチでAWS自動化(JAWS-UG-LT @shimy_net )
ピタゴラスイッチでAWS自動化(JAWS-UG-LT @shimy_net )
崇之 清水
Inkscapeで折り図を描く〜折り図を並べる〜
Inkscapeで折り図を描く〜折り図を並べる〜
daidai_avocado
3 Dモデリング
3 Dモデリング
浩明 張田
イマドキのスライス事情
イマドキのスライス事情
Sou Lab
タンブラー台紙をつくる
タンブラー台紙をつくる
Haruko Kakiuchi
【 Unity道場 1月 ~LWRPとシェーダー~】俺はUVスクロールがしたかっただけなんだ!
【 Unity道場 1月 ~LWRPとシェーダー~】俺はUVスクロールがしたかっただけなんだ!
Unity Technologies Japan K.K.
東京クロノスで製作中のエディターの紹介
東京クロノスで製作中のエディターの紹介
MaxNeetGames
Iron rubyとsilverlightとゲームと
Iron rubyとsilverlightとゲームと
kumaryu
AWSはとんでもないものを盗んでいきました(JawsDays2013@shimy_net)
AWSはとんでもないものを盗んでいきました(JawsDays2013@shimy_net)
崇之 清水
Web Driverでブラウザを操作する
Web Driverでブラウザを操作する
Masuo Ohara
ロボットファイルを解析して保守支援機能を自作する
ロボットファイルを解析して保守支援機能を自作する
Masuo Ohara
RPALT20210112
RPALT20210112
Masuo Ohara
文書化しない操作手順説明はあり?
文書化しない操作手順説明はあり?
Masuo Ohara
OSSツールで始めるPersonal RPA
OSSツールで始めるPersonal RPA
Masuo Ohara
RPAタスクの実行や予約どうやっていますか?
RPAタスクの実行や予約どうやっていますか?
Masuo Ohara
Mais conteúdo relacionado
Mais procurados
3 Dモデリング
3 Dモデリング
浩明 張田
イマドキのスライス事情
イマドキのスライス事情
Sou Lab
タンブラー台紙をつくる
タンブラー台紙をつくる
Haruko Kakiuchi
【 Unity道場 1月 ~LWRPとシェーダー~】俺はUVスクロールがしたかっただけなんだ!
【 Unity道場 1月 ~LWRPとシェーダー~】俺はUVスクロールがしたかっただけなんだ!
Unity Technologies Japan K.K.
東京クロノスで製作中のエディターの紹介
東京クロノスで製作中のエディターの紹介
MaxNeetGames
Iron rubyとsilverlightとゲームと
Iron rubyとsilverlightとゲームと
kumaryu
AWSはとんでもないものを盗んでいきました(JawsDays2013@shimy_net)
AWSはとんでもないものを盗んでいきました(JawsDays2013@shimy_net)
崇之 清水
Mais procurados
(7)
3 Dモデリング
3 Dモデリング
イマドキのスライス事情
イマドキのスライス事情
タンブラー台紙をつくる
タンブラー台紙をつくる
【 Unity道場 1月 ~LWRPとシェーダー~】俺はUVスクロールがしたかっただけなんだ!
【 Unity道場 1月 ~LWRPとシェーダー~】俺はUVスクロールがしたかっただけなんだ!
東京クロノスで製作中のエディターの紹介
東京クロノスで製作中のエディターの紹介
Iron rubyとsilverlightとゲームと
Iron rubyとsilverlightとゲームと
AWSはとんでもないものを盗んでいきました(JawsDays2013@shimy_net)
AWSはとんでもないものを盗んでいきました(JawsDays2013@shimy_net)
Mais de Masuo Ohara
Web Driverでブラウザを操作する
Web Driverでブラウザを操作する
Masuo Ohara
ロボットファイルを解析して保守支援機能を自作する
ロボットファイルを解析して保守支援機能を自作する
Masuo Ohara
RPALT20210112
RPALT20210112
Masuo Ohara
文書化しない操作手順説明はあり?
文書化しない操作手順説明はあり?
Masuo Ohara
OSSツールで始めるPersonal RPA
OSSツールで始めるPersonal RPA
Masuo Ohara
RPAタスクの実行や予約どうやっていますか?
RPAタスクの実行や予約どうやっていますか?
Masuo Ohara
Mais de Masuo Ohara
(6)
Web Driverでブラウザを操作する
Web Driverでブラウザを操作する
ロボットファイルを解析して保守支援機能を自作する
ロボットファイルを解析して保守支援機能を自作する
RPALT20210112
RPALT20210112
文書化しない操作手順説明はあり?
文書化しない操作手順説明はあり?
OSSツールで始めるPersonal RPA
OSSツールで始めるPersonal RPA
RPAタスクの実行や予約どうやっていますか?
RPAタスクの実行や予約どうやっていますか?
Sikuli x 知っていますか?
1.
SikuliX 知っていますか? ~見た目の感覚で操作できる自動化ツール~ 小原増雄 (http://masuo.doorblog.jp )
2.
■私のSikuli活用状況 • 出会ったのは3年前「どんな画面にも使える」と一目惚れ ⇒設備グラフィカル画面、X-Windowsのエミュレータ画面 • それ以来、自宅や仕事場で画面操作の自動化に利用 •
今年になってSeleniumと連携できることに気付き ⇒ブラウザの操作に挑戦中 • これからはSikuliの楽しさを多くの人に伝えたい!
3.
■龍馬を探せ 早速ですがデモです。 今から、歴史上の人物のイラストを表示します。 坂本龍馬 がいくつあるか? 5秒間で数えてみてください。
4.
5.
6.
このように、Sikuliはスクリーン上の画像 を探します
7.
■Sikuliの特徴 •操作位置を画像で検索するところが一番の特徴 •画像はスクリプトの中にも現れる
8.
■ここが好き(簡単) •環境構築が簡単 ⇒Javaランタイムがあれば、セットアップコマンド実行だけでOK ⇒セットアップフォルダを移動しても動く •操作位置を特定するid、XPathを知らなくていい ⇒ExtJSを使ったコンボボックスのXPathは・・・ (>_<) •Pythonのdef、While、if elseを覚えたらすぐ書ける (JythonとJRubyをバンドル、どちらでも選択可能、私はPython派)
9.
■ここが好き(感覚的に) •操作位置を見た目で判断する感覚 •忠実に模擬してくれるマウスとキーボードの操作感 ⇒ 『こういう操作がしたい』を実現してくれます。
10.
■Seleniumに対するイメージ •ブラウザ操作の自動化ならSelenium •本格的にやるならEclipsを使わなきゃだめか? •Seleniumには興味があるけど、Eclipseなどの実行 環境を準備するのは大変そう。
11.
■SikuliからSeleniumの呼び出し •使い慣れたSikuli IDEからSeleniumが使えるなら •試していたらなんとか動作しました。 【気付き】 selenium-server-standalone-xxxx.jarの中に WebDriverのAPIクラスライブラリが入っていて、この jarファイルから必要なクラスをimportして、呼び出せ ばいいんだ。
12.
■Yahoo! JAPANのトップページで検索する例 1行追加するだけで 使えるようになった!
13.
SikuliからSeleniumを呼び出すことで、何か楽 しいことが起きそうだ、と期待しています。 それだけではなくて、SeleniumからSikuliを呼 び出すと、きっと今まで出来なかったことがで きるようになるはず! という思いを伝えたくて、今日ここに居ます。
14.
■ライブラリとしてのSikuliの活用 •皆様は、既にSeleniumをご利用中ですから、 ライブラリとしてのSikuliの活用を提案します。 •用途としては 1. 次の操作を開始するタイミングをとる 2. ブラウザ操作の途中でファイルをダウンロードする 3.
プログラム変更に伴うレイアウトの崩れをチェックする
15.
■exists()で待つ 「名前を付けて保存」ダイアログを待つ例 while not exists(
画像 ): wait(1) click(画像):
16.
■exists()で判断 次の操作の分岐判断を見た目で判断する例 while not exists(条件1画像)
and not exists(条件2画像): wait(1) if exists(条件1画像): click( ) elif exists(条件2画像): # 条件2処理
17.
■レイアウトの崩れをチェックする 不良: 正常: 現実的な例かどうかは別として、 チェックするコードを書いてみました。
18.
■Region() + exists()で判断 「レイアウトの崩れをチェックする」のコードです
19.
■SikuliXに無い機能 •操作の記録 •ブレークポイントの設定 •合否判定・テスト結果 ⇒テストに利用するためには、いろいろ仕掛けが必要
20.
ご清聴ありがとうございました Seleniumの使い手である皆さまから、 いろいろなご意見・ご感想を いただければ幸いです。