S eda1a14b50ee24bcab19b62f40858e76 Selenium

Webブラウザでのテスト自動化するツール
Javaでできてる。

coreはHTMLでテストを書いてtomcatから動かす。RCは好きなプログラミング言語でテストを書いてRC用のサーバ(port:4444)からブラウザを起動する。

Selenium IDEはFirefoxのアドオンで操作を記録してテストを記述できるみたい。

Selenium RCをPHPから使う

ダウンロード→http://selenium-rc.openqa.org/download.html
チュートリアル→http://selenium-rc.openqa.org/tutorial.html

解凍してselenium-serverのとこにいってまずはinteractiveモードでテスト。

% java -jar selenium-server.jar -interactive

プロンプトで入力できるようになるのでコマンドうってみる。
% cmd=getNewBrowserSession&1=*iexplore&2http://google.com

Firefox3では動かないみたい。*ieploreと*safariで起動確認。ログを見るとレジストリをなにやら操作してるみたい。大丈夫なのかな…。
Opera9.5起動してみたらなんかおかしくなった。Selenium試してからOpera Linkでログインできない…!別アカウントならログインできるから新しく作ったわ…。

サンプルだとsessionIdが6桁の数字なのにこのバージョンではやたら長い。とりあえずinteractiveモードはここまで。


PHPから動かしてみる。

PHPUnitをダウンロード
% pear channel-discover pear.phpunit.de
% pear install phpunit/PHPUnit


SeleniumのPHPのサンプルを実行する
phpunit GoogleTest GoogleTest.php

ブラウザの指定はコンストラクタTesting_Seleniumから行う。


コマンド

open URLを開く
type(name, value) inputフィールドに値を入れる
click(name) ボタン、リンク等をクリックする
waitForPageToLoad(int) 待つ。これしないと正しく動かなかった。
getLocation 現在URLを返す

typeやclickの要素指定は「Element Locator」という独自の書式で指定する。
identifier, id, name, dom, xpath, linkが使える。identifierはidかname、domはjavascriptの書式、linkはリンクラベル。
$selenium->click('link=リンクラベル');

詳細→http://wiki.openqa.org/display/SEL/Selenium+0.7+Reference+(Japanese)


参考

http://www.reiersol.com/blog/index.php?op=...
http://www.thinkit.co.jp/free/article/0705...
http://codezine.jp/a/article.aspx?aid=436
http://codezine.jp/a/article/aid/452.aspx
http://tech.feedforce.jp/selenium_rc.html

もしかして

    他の人の「Selenium」

    S eda1a14b50ee24bcab19b62f40858e76

    無所属ソフトウェアエンジニア

    (1722words)

    最新

      最新エントリ

        関連ツイート