LoginSignup
7
8

More than 5 years have passed since last update.

Selenium Webdriverの自分用Tipsまとめ 1

Last updated at Posted at 2015-11-18

Selenium IDEから、Selenium WebDriver(Ruby)環境構築メモ。
覚えている限り。

動機

Windows端末上でSelenium IDE使ってWebページテストしていたけれど、ページ遷移が面倒だし、自分でKickするのは面倒くさいなあ。
→世の中にはSelenium Webdriverというものがあるらしいぞ。
→おまけに、サーバ内でモニターなくても試験できるヘッドレス環境というのもあるらしいぞ。
→さらに、Jenkinsという、タスクをKickするのに便利なモノもあるらしいぞ。

→JenkinsとSelenium Webdriverを組み合わせて、おまけにHeadlessでサーバ内でブラウザ立ち上げてテストしてしまえば、割と楽にできるのでは?

という安易な考えでスタート。

環境

VMでUbuntuを用意。 14.04使ってます。

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.1 LTS"

構築手順

Linuxサーバ

上記のとおりUbuntuをさくっとVM上に構築。

Ruby実行環境

rbenv+ruby環境構築。

こちらの記事をまるまるパクリました。
http://qiita.com/ringo/items/4351c6aee70ed6f346c8

rspec環境構築

Selenium IDEでフォーマットするとき、rspecが一番上に来てた、という安易な理由でrspec導入。
rspec調べてみると、結果判定できたり、出力できたり、と色々素敵。

$ gem install rspec
$ rspec -v
3.3.2

たぶんこれでrubyとrspecが入った気がする。たぶん。

必要なgemの導入(selenium-webdriver,webdriver-user-agent,headless)

Selenium Webdriverを利用するために、いくつかgemを追加で入れる。

1.selenium-webdriver
→何がなくても必要
2.webdriver-user-agent
→テスト対象のサイトはPCだけじゃなくてスマホ、ガラケーも対応してるので、useragent指定できる必要あり。

$ gem install selenium-webdriver
$ gem install webdriver-user-agent

ブラウザのインストール

UbuntuでWebページ開くために、ブラウザをインストールする。
Firefoxは
bash
$ sudo apt-get install firefox

でサクっと入りました。
時系列的にはあとでわかったことだけれど、日本語フォント入れないと
Imagemagickでスクショ取ったとき、日本語が□□□ みたいになって悲しくなったので、
日本語フォントもここで導入。

と、ここで何をどうして入れたのか忘却・・・。

$ sudo apt-get install fonts-takao-pgothic
$ sudo apt-get install fonts-takao-mincho
$ sudo apt-get install fonts-takao-gothic
$ sudo apt-get install fonts-takao

あたりを入れたような入れてないような・・・。
思い出したら書きます。

Xvfbのインストール

Ubuntu上でヘッドレス環境を実現するために、うそんこのPC画面をつくってくれるらしい。
とてもステキ。

$ sudo apt-get install xvfb

で、Xvfbの起動方法はいろいろやり方あるみたいですが、ここではこのようにテストを実行する前にXvfb上でfirefoxを動かしてます。

$Xvfb :1 -screen 0 1024x768x24 &

ここで指定した:1がウィンドウの番号で、次にFirefoxを起動するときに使う、みたいな。
試しにfirefoxを立ち上げてみると、こんな感じですかね。

$export DISPLAY=:1
$firefox  &

参考。
http://tobyho.com/2015/01/09/headless-browser-testing-xvfb/

と、初めてのポストはこんなもんで。
あとは、
Selenium-IDEからSelenium-Webdriverのコードを作るTips
Jenkinsからのテストコード実施
スクリーンショット撮るためのImagemagik導入
などなど書ければ。

7
8
0

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
7
8