LoginSignup
17

More than 5 years have passed since last update.

SeleniumでHTMLを出力する方法

Last updated at Posted at 2014-03-04

はじめに

  • こんなときに役に立ちました
    • テストは手動でコンソールから実行すると成功するのに、Jenkinsから実行すると失敗する
    • 目視で見ようかと思ったが、Jenkinsから実行するとブラウザがバックグラウンドで起動して見えない
    • かといってフォアグラウンドで実行する方法はググったが分からなかった
    • 詰んだ orz...

現在表示しているページのHTMLを取得する

  • 原始的ですが、Javascript式を挿入してgetElementほげほげで取得します
    • あとはputsで出力するなり、ファイルに書き出すなりすればブラウザでその決定的瞬間に出会えるのです
# idにdocが付いている要素があると仮定している
page.evaluate_script("document.getElementById('doc').innerHTML")
  • page.evaluate_scriptの引数に指定したものがJavascript式として評価される
  • ID以外にも要素の指定はタグ名やクラス名指定などでも可能

実はもっと簡単に取得する方法があるのかもしれない。。と思いながら記事書いてみました!

~ただの宣伝~

  • 全国のSeleniumer必読
  • Seleniumerといっていますが、Selenium, SauceLabs, Travis, Jenkinsに関するノウハウ書いているのでよかったら参考にしてみてください

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17