Selenium IDEでWebアプリのテストを自動化
Selenium IDE
ブラウザで行った動作をマクロで記録し、その動作を再現してくれるFirefoxアドオン。
記録した動作はテーブルで表示され、ソースとして読むこともできる。
ソース形式はDHTMLで、こんな感じ。
<?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="" /> <title>New Test</title> </head> <body> <table cellpadding="1" cellspacing="1" border="1"> <thead> <tr><td rowspan="1" colspan="3">New Test</td></tr> </thead><tbody> <tr> <td>assertTitle</td> <td>テストページのタイトル</td> <td></td> </tr> <tr> <td>clickAndWait</td> <td>link=テストデータ登録</td> <td></td> </tr> <tr> <td>assertTitle</td> <td>テストデータ登録画面</td> <td></td> </tr> <tr> <td>clickAndWait</td> <td>//div[@id='test_list']/fieldset/table/tbody/tr[5]/td[1]</td> <td></td> </tr> <tr> <td>assertTitle</td> <td>テストデータ登録画面</td> <td></td> </tr> <tr> <td>type</td> <td>itemName</td> <td>テストアイテム01</td> </tr> <tr> <td>select</td> <td>testOptionId</td> <td>label=テストオプション03</td> </tr> <tr> <td>clickAndWait</td> <td>//input[@value='次へ']</td> <td></td> </tr> : : </tbody></table> </body> </html>
大量のテストデータを色々なパターンで入力したい時は、ソースの内容をコピーして、フォーム入力内容などを変えるだけで、単調なテストを自動化できる。