WindowsでSelenium IDE,Serverを使い、各ブラウザを自動テストする(旧)

ツールをインストール


Java インストール

全オペレーティング・システム用のJavaのダウンロード

Windows オンラインのダウンロード


Seleniumのダウンロード

http://www.seleniumhq.org/download/

以下をダウンロード

プラグインもダウンロード

Selenium IDE おすすめプラグインまとめ | 品質向上ブログ

FireFoxでのIDEアドオンは、ダウンロードサイトでしか入手できません。


IEの設定

保護モードを有効にする

f:id:hrt0kmt:20150526155417p:plain

IDE > オプション > 設定 > WebDriver > Enable WebDriver Playbackにチェック

internet explorerと入力 > OK

この設定をすると、FireFoxでテストケースを実行すると、IEでも実行されます。


Seleniumサーバーの起動

% java -jar selenium-server-standalone-*.jar


各環境への流し込み

% java -jar selenium-server-standalone-*.jar -htmlSuite <*firefox, *chrome, *iexplore> <テスト対象URL> <テストスイートファイル> <テスト結果ファイル>

// serverを起動させ、テストを実行。結果をresult.htmlとして出力する。

// 悪い例
C:\Users\developer\Desktop>java -jar selenium-server-standalone-2.45.0.jar -htmlsuite "*chrome" "http://test.com" "test_suite.html"
"results.html"

// よい例
C:\Users\developer\Documents\selenium>java -jar selenium-server-standalone-2.
45.0.jar -htmlSuite "*iexplore" "http://test.com" "C:\Users\developer\Documents\selenium\login_test.html" result.html

// 日本語が文字化ける場合
java  -Dfile.encoding=8859_1 -jar selenium-server-standalone-2.45.0.jar -debug -logLongForm -htmlSuite "*firefox" http://www.yahoo.co.jp testsuite.html result.html > log.txt 2>&1


ブラウザ指定名

*iexplore
*konqueror
*firefox
*mock
*pifirefox
*piiexplore
*chrome
*safari
*opera
*iehta
*custom


注意:ファイル上はhtml拡張子がついていなくとも、.html拡張子をつけない。 注意:テストスイートの指定は、絶対パスで指定する。

// suit.html
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="http://test.com/" />
<title>test_suite</title>
</head>
<body>
<table id="suiteTable" cellpadding="1" cellspacing="1" border="1" class="selenium">
<tbody>
<tr><td><b>test_suite</b></td></tr>
<tr><td><a href="login.html">login</a></td></tr>
</tbody>
</table>
</body>
</html>


//testcase
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head profile="http://selenium-ide.openqa.org/profiles/test-case">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="selenium.base" href="http://test.com/" />
<title>login</title>
</head>
<body>
<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">login</td></tr>
</thead><tbody>
<tr>
    <td>open</td>
    <td>http://test.com/login</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>name=select</td>
    <td></td>
</tr>
<tr>
    <td>type</td>
    <td>name=mail</td>
    <td>test@test.com</td>
</tr>
<tr>
    <td>type</td>
    <td>id=inputpass</td>
    <td>password</td>
</tr>
<tr>
    <td>check</td>
    <td>name=auto</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>//button[@type='submit']</td>
    <td></td>
</tr>
<tr>
    <td>verifyElementPresent</td>
    <td>id=nav</td>
    <td></td>
</tr>
<tr>
    <td>verifyVisible</td>
    <td>id=nav</td>
    <td>http://test.com/</td>
</tr>

</tbody></table>
</body>
</html>


ダウンロードはすべてルート直下などではなくデスクトップやダウンロードなどに置くこと(管理者権限のエラーでサーバーの起動ができません)

java.io.IOException: アクセスが拒否されました。などと表示されてしまいます。

f:id:hrt0kmt:20150526132658p:plain

chromedriverの場合

http://chromedriver.storage.googleapis.com/index.html



> java -jar selenium-server-standalone-2.44.0.jar -Dwebdriver.chrome.driver=chromedriver

> C:\Users\developer\Documents\selenium>java -jar selenium-server-standalone-2.
45.0.jar -htmlSuite "*googlechrome" "http://test.com" "C:\Users\developer\Documents\selenium\login_test.html" result.html



参照

Selenium-IDE — Selenium 日本語ドキュメント

Modern.ie - MacでもできるIE/Firefox/Chromeブラウザテスト方法まとめ - Qiita

Selenium IDEを使って、ChromeやIE上でテストスクリプトを実行する方法 | 品質向上ブログ