F.Ko-Jiの「一秒後は未来」ではウェブやSEO、API、RSSといった技術的ネタから、ちょっとした豆知識や梅酒、エンタメ系まで様々な情報を不定期にお届けしています。

SeleniumのテストをPHPで楽に書く < プログラミング < F.Ko-Jiの「一秒後は未来」 < fkoji.com

SeleniumのテストをPHPで楽に書く

スポンサード リンク

Seleniumのテストは次のようなテーブル要素を使って書く。

<tr>
  <td>open</td>
  <td>index.html</td>
  <td></td>
</tr>
<tr>
  <td>verifyText</td>
  <td>id=title1</td>
  <td>タイトル1</td>
</tr>
<tr>
  <td>verifyText</td>
  <td>id=title2</td>
  <td>タイトル2</td>
</tr>
<tr>
  <td>verifyText</td>
  <td>id=title3</td>
  <td>タイトル3</td>
</tr>
<tr>
  <td>clickAndWait</td>
  <td>submit</td>
  <td></td>
</tr>

これが面倒。テストが多くなってきたり長くなってきたりすると、テストを修正するメンテコストも高くなってしまう。そこで、この部分を例えばPHPで次のように書けるようにすると視認性が向上してかなり楽になる。

<?php
  $sw = new SeleniumWriter();
  $sw->open('index.html');
  $sw->verifyText('id=title1', 'タイトル1');
  $sw->verifyText('id=title2', 'タイトル2');
  $sw->verifyText('id=title3', 'タイトル3');
  $sw->clickAndWait('submit');
?>

SeleniumWriterクラスは、単純にテーブル要素を書き出してくれればよい。このクラスは例えば次のようになる。

<?php
class SeleniumWriter {
  public function __construct(){}
  public function __call($name, $params) {
    $params = array_merge((array)$name, $params);
    call_user_func_array(array($this, 'writeTest'), $params);
  }
  protected function writeTest($func, $arg1 = "", $arg2 = "") {
    echo "<tr><td>${func}</td><td>${arg1}</td><td>${arg2}</td></tr>";
  }
}
?>

このクラスを元に独自のメソッドを加えたりして拡張すると便利だ。JavaScriptで同じようなオブジェクトを作ろうとしたけどちょっとうまくいかなかった。


コメントを投稿

(承認されるまでコメントは表示されません。)

プログラミング

English version

「SeleniumのテストをPHPで楽に書く」を携帯で読む

前のエントリー: « Yahoo!でのインデックス数がGoogleの3分の1以下
次のエントリー: あなたの電池パック、膨れていませんか? »

トラックバック

このエントリーのトラックバックURL:

このブログをRSSリーダーで簡単購読
Subscribe with livedoor Reader Add to Google My Yahoo!に追加 Subscribe with Fastladder Bloglinesで閲読登録 はてなRSSに追加 エキサイトリーダーに登録

タイトル:

URL:

リンク用HTMLタグ:

powered by Google Chart API

ケータイ会議4参加中
最近の注目記事
プロフィール
F.Ko-Ji
F.Ko-Ji (Koji Fukunaga)

ウェブエンジニアだけど技術の深いとこにはあまり興味がなくて、さくっとアイデアを形にするのが好きです。ブログには自分のアンテナにひっかかったものを色々書いてます。

詳しいプロフィールはこちら
Twitter
梅酒.in
powered by 梅酒.in
えもにゅ

↑ 気持ち記録サービス「えもにゅ」です

月別アーカイブ


<< July 2009
SuMoTuWeThFrSa
 1234
567891011
12131415161718
19202122232425
262728293031 
人気エントリー
TopHatenar
グリムス
毎日の歩行記録
携帯からのアクセスは
QRコード
http://mob.fkoji.com/