第5回 Seleniumでのテストの記述方法 - テスト講座

PHP基礎編

TOM先生のテスト講座

Lecutures on PHP

第5回 Seleniumでのテストの記述方法 (その2)

 このエントリーをはてなブックマークに追加

Seleniumのコマンド

(2) Accessorsコマンド(Assertionコマンド含む)

Actionコマンドは実際にWebアプリケーションを動作させてみるコマンドでしたが、AccessorsコマンドおよびAssertionコマンドは動作した結果を保持したり、評価したりするためのコマンドです。assertTitleとverifyTextの2つを紹介します。

  • assertTitleコマンド

assertTitleコマンドはActionコマンドを実行した結果、表示されたページのtitleが期待しているものと合っているかを確認するためのコマンドになります。

図5 テスト対象のHTMLファイル
<html>
<head>
<title>Hello! Selenium!</title>
</head>
<body>
  :
  :
</body>
</html>

上記のページが表示されたことを確認するには次のようなassertTitleコマンドを記述します。ターゲットには期待するタイトルの文字列を記載します。

図6 assertTitleコマンドの記述例
 assertTitle  Hello! Selenium!             


  • verifyTextコマンド

verifyTextコマンドはActionコマンドを実行した結果、表示されたページの特定の部分が期待した値になっているかを確認するためのコマンドになります。

前回までで説明したWebアプリケーションでは次のような仕様になっていました。

  • (1) 入力エラーがあった場合にはエラーがliタグで記述されてそこにはidが付与される
  • (2) 付与されるidは"errorX"(X部分は1から始まる連番)

実際のエラーは次のような形になります。

図7 エラー表示部分
<ul>
<li id="error1">1つめの値を入力してください</li>
<li id="error2">2つめの値を入力してください</li>
</ul>

上記のエラーが出ているかを確認するためのは次のようなverifyTextを記述します。ターゲットにはそのタグを特定するためにidの値を記載し、バリューには期待する文字列を記載します。

図8 verifyTextコマンドの記載例
 verifyText  error1  1つめの値を入力してください 
 verifyText  error2  2つめの値を入力してください 

その他のAccessorsコマンド(Assertionコマンド含む)については、以下のページでご確認ください。

Selenium リファレンスガイド(日本語版)
http://wiki.openqa.org/display/SEL/Selenium+0.7+Reference+(Japanese)



Pick Up Q&A

Q
負荷時のmysql_connect()エラー
 このエントリーをはてなブックマークに追加 
A
これはPHPというよりOSまたはMySQLのコミュニティで質問されたほうがいいと思います。 ぱっと思いついた範囲で記すと MySQL等のDBに「ある時点において同時に接続可能なクライアントの最大数」に制限があるよう...

>>続きを読む

今回のような実践的な経験がエンジニアのキャリアに繋がると思います。是非サービスを成功させて下さい!

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)