JSでマウスイベント(クリック)を起こす/ mouseEvent を Dispatch して起動する
Javascriptでクリックイベントを起こす。クリックイベントを起こさないとテストできないページが有る。クリックイベントをFireするには、initEvent と dispatch イベントを使う。マウスイベントvar me = document.createEvent("MouseEvents") me.initMouseEvent("click", true, true,...
View Articleruby selenium webdriverでプロファイルを毎回同じものにする。
毎回・毎回ログイン処理を待つのを面倒くさいんですよね。テスト時はログイン処理が必要だけど、テスト書いてる時は省略したいですよねなので、プロファイルを指定すれば前回のCookieやらパスワード保存が使えるそれなりに便利#!/usr/bin/env ruby##require'selenium-webdriver' caps =...
View ArticleSelenium使おうとしたらchromedriverが古くてエラーになった。
selenium使おうとしたらエラーになった。>> require 'selenium-webdriver' => true >> driver = Selenium::WebDriver.for :chrome , :desired_capabilities => caps NameError: undefined local variable or...
View ArticleSelenium で フォーム送信
Seleniumで フォーム送信 するには。若干のWaitを入れてあげるとうまく動くと思う。driver.goto 'https://example.com/login' wait = Selenium::WebDriver::Wait.new(:timeout => 3) # second## ページロードを待つ wait.until {...
View Articleselenium で parital text/ link_text を指定すれば楽ができる!!!!
seleniumでリンクの指定が楽になった。ドキュメントを読んでたら、良いものを見つけた 今までのやり方。driver.find_element(:xpath, "//a[contains(./text(), 'ログイン')]") driver.find_element(:xpath,...
View Articleselenium で Google Chromeの開発者ツールにアクセスする
Seleniumから 開発者ツールにアクセスしたい。DevtoolsがChromeで閉じられちゃうので、なんとかならないのかなと思って調べてた。パフォーマンスタブにアクセスできる driver.execute_script("return...
View ArticleSelenium でモバイルエミュレーション
seleniumでモバイルエミュレーションを使いたいChromeのWebDriverでモバイル・エミュレーションを使えれば便利なのに。回線速度とか、画面の回転とか、画面のサイズとか、逐次セットするのは面倒なので、セットになってるモバイル・エミュレーション機能を使えば楽なのに。と思って調べたら出来るcaps =...
View Articlechrome(webdriver)を headless はリサイズできないので、初期値で決めて解決させる
headless で動かしてる chromeでエラーが出る。最初、なんのエラーかわからず悶絶してた。理由がわかったので書いておきます。リサイズすると次のようなエラーにdriver.manage.window.resize_to(1200,1200) エラーSelenium::WebDriver::Error::UnknownError: unknown error: cannot get...
View Articlechromeの起動オプションでページをHTML→PDFで保存する。
chromeだけを使って、HTMLをPDFに変換します。chromeで pdf にサイトを保存することが可能です。Seleniumのscreenshot を作らなくても、単一なページであれば、PDFにすることが可能です--print-to-pdfオプション$ alias chrome='/Applications/Google Chrome.app/Contents/MacOS/Google...
View ArticleSeleniumで印刷(print preview)を経てPDFを保存する方法
Selenium + chromedriverで 印刷プレビューにアクセスするのが面倒くさいChromeを webdriverでアクセスすると iframe...
View Articlechrome でHTML をPDFに変換する
HTMLをPDFに変換する --print-pdfオプションHTMLをPDFに変換するコマンドは、いくつか有るけれど、 chromeのオプションだけで実現できる。しかも chrome59 から headlessオプションがあって更に便利になった。コマンドの使い方chrome-bin --headless --print-pdf=path/to/output.pdf...
View Articleselenium で chrome ヘッドレスで新規タブの要素をクリックできない
selenium + chromedriver を headlessを扱うときに困る。新規タブを開かれると、element not clickable で、currently visibleで、 displayed がfalse になる。なんで、クリックできないエラーになるのか頭をひねったら、width だった。原因と再現driver.execute_script("var tab =...
View ArticleSeleniumのWebDriver(chrome)からCookieを取りだしてHTTP::CookieにしたりCurlで再利用する
SeleniumのWebDriverからCookieを取り出したらSeleniumで画像をだけを取り出して保存したり、ファイルを取り出すのは不便だよね。だけど、直接Curlで叩くのもCookieの問題でもっと不便だよね。そこでSeleniumのCookieをCurlで使える形式やNetscape形式で保存したり、RubyやPythonなどの http...
View Article