Java書けない人がWebDriverを触る


環境

OSX 10.9.4
Eclipse Juno

準備(前半)

Selenium2 WebDriver の DL

本体。
http://docs.seleniumhq.org/download/

スクロールすると、言語毎(Java, C#, Ruby, Python, Javascript[Node])にDLリンクがあるので選択。
今回はJavaを選択。
ダウンロードしたらzipを展開して、どこかに置いておく。

ChromeDriverのDL

ブラウザを操作するのに必要。
同じページの更に下にあります。
FirefoxDriverはデフォルトで入っているっぽいです。
zip展開しておく。

準備(後半)

Eclipseでプロジェクト作成

  1. プロジェクト一覧のところで右クリック -> New -> Java Project -> 適当に名前をつけて Finish
  2. 作ったプロジェクトを右クリック -> New -> Package -> 適当に名前をつけて Finish
  3. 作ったパッケージを右クリック -> New -> Class -> 適当に名前をつけて Finish

Build Pathの設定

  1. プロジェクトを右クリック -> Build Path -> Configure Build Path
  2. [Source][Projects][Libraries][Order and Export]というタブがあるので、[Libraries]を選択
  3. Add External JARs...を選択
  4. さっき展開しておいた(selenium-2.x.xとかいうフォルダ名のはず)の中のjarファイルを2つとも選択してOpen
  5. もう一度 Add External JARs... を選択 さっき選択した2つのjarと同じ所にlibsフォルダがあって、中にたくさんjarがあるので、全部選択してOpen
  6. OKを押して終了

書く

  • 作ったクラス(.java拡張子がついてる)をダブルクリックして開く。

にサンプルコードが載っているので、写経。
(package名、class名は自分が指定した名前でもう書いてあるはず)

動かす

  • 作ったクラスを右クリック -> Run As -> Java Application

Firefoxが立ち上がり、Consoleにログが出る!
(Consoleが見当たらない場合はメニューバーのWindow -> Show View -> Console)

Page title is: Google
Page title is: Cheese! - Google 検索

Chromeで動かす

FireFoxをChromeに置き換えるだけと思いきや、それじゃ駄目らしいです。
http://kenichiro22.hatenablog.com/entry/20110825/1314280671

chromedriver をソースコードの中に追加

  1. Eclipse -> Preference を選択
  2. 検索窓に"workspace"と入力
  3. General > Startup and Shutdown > Workspaces がヒットするので選択
  4. workspaceのpathが分かるので、Finderで開く
  5. プロジェクト名のフォルダがあるので、その中に適当にフォルダを作り、chromedriverを入れる(例えばdriver/chromedriver、とか)
  6. Eclipseに戻って、プロジェクトをrefresh(F5)とかすると追加したフォルダが反映されます

コード修正

main(String[] args)の最初に
System.setProperty("webdriver.chrome.driver", "driver/chromedriver"); を追加

最後に、firefoxをchromeに、FirefoxをChromeに置き換え、先程の手順で実行するとChromeが立ち上がります。

感想

この後は、Byとか何とかで色々できるようになるみたいです。
もっとEclipseのショートカットキーを覚えないと辛い。。
一方jsの場合は npm install selenium-webdriver でインストールできるけど、その後が??)
wdというのもあるみたいだけど、やっぱり使い方が???