「Selenium Documentation 」を読みつついじってみると、単に get started 的なニーズに限っても、割りと読むところが多くて面倒くさい。あと、Selinium IDE から入る説明より、プログラマなら 多分 Selenium RC の方が始めやすい気がした。(ちなみに、ほんの数年前まで Selenium Core ベースでの説明が主流だったけど、この先 deprecated になって行くらしい。)
という事で、以下に最小限の要素だけ抜き出してみた。
■ やる事
- 以下の事をJUnitのテストメソッド内で自動実行する
- "http://www.google.co.jp/" を開く
- テキストボックスに"selenium rc"を入力
- 検索ボタンを押す
- 結果のページに"selenium rc の検索結果 約*件中*件目"というパターンが含まれる事を確認する。
- 以下の知識を前提としている。
- テキストボックスの name属性は q
- 検索ボタンのname属性は btnG
環境
- Windows XP SP3
- Eclipse 3.5(Galileo)
準備
- Selenium1.0.1 をここで ダウンロードする。
- 適当なところ(以下{selenium}とする)に展開する。
■ 実行
- コマンドプロンプトを開く
- {selenium}/selenium-server-1.0.1に移動
- java -jar selenium-server.jar で サーバーを立ち上げる
- 適当に Java Project を作る
- [Add External JARs...]で次の jar を追加 {selenium}/selenium-java-client-driver-1.0.1/selenium-java-client-driver-sources.jar
- [Add Library...] で JUnit4 を追加
- テストクラスを記述
package com.example.tests; import com.thoughtworks.selenium.*; public class NewTest extends SeleneseTestCase { public void setUp() throws Exception { setUp("http://www.google.co.jp/", "*firefox"); } public void testNew() throws Exception { selenium.open("/"); selenium.type("q", "selenium rc"); selenium.click("btnG"); selenium.waitForPageToLoad("30000"); assertTrue(selenium.isTextPresent("selenium rc の検索結果 約*件中*件目")); } }
- [Run As]->[JUnit Test]で実行
■ 次にやる事
上の動作確認ができたら、現場の技術者が次にやる事は、大体以下のような仕事になるはず。
- もっと詳しく調べて Selenium に精通する。
- 他の開発者のためにガイドラインや Tips 集的なものをまとめておく。
- 後でノウハウが集まる事を期待してwiki 的なものにエントリを用意しておく。
- 開発チームと業務/テストチームが別の場合、協働と役割分担を調整する。
- 手動+目視じゃないと確認できない事象を識別する
- Continuous Integration に組み込む
ただし他の xUnit コードでも同じだけど、開発初期のイテレーションから導入しておかないと後で難しくなりがち。大部分できてから後付けテストを書くと、得てして余計に難易度が高まる。やはりテスト関連作業を前の方に持ってくるのは、何プロセスだろうと現代の開発の基本なんだろう思う。
====
つうか、blogger の仕様が変わったのか、昔の投稿のほとんどが挙動不審で、レイアウトがおかしくなっている。なんなんだこれ…(2011/11/03)
0 件のコメント:
コメントを投稿