Hatena::Groupadmire

開発ネタ物置 このページをアンテナに追加 RSSフィード

2008-07-02

[][][]Selenium RC導入のまとめ その2 12:04 Selenium RC導入のまとめ その2 - 開発ネタ物置 を含むブックマーク

追加条件

  1. ウインドウでの処理(例:ログイン画面の次がもう別ウインドウ
  2. 処理後にIE勝手に終了するの、何とかならない?

ウインドウでの処理

waitForPopUp→selectWindowで対応

-      <tr><td>clickAndWait</td><td>id=(ログインボタンのID)</td><td></td></tr>

+      <tr><td>click</td><td>id=(ログインボタンのID)</td><td></td></tr>
+      <tr><td>waitForPopUp</td><td>(次画面のウインドウID)</td><td>30000</td></tr>
+      <tr><td>selectWindow</td><td>(次画面のウインドウID)</td><td></td></tr>

参考:Selenium 0.7 Reference (Japanese)

メモ
追記

時々 waitForPopUpで「書き込みできません。」エラーになる(ウインドウを開くタイミングの問題らしい?)。その場合は、waitForPopUpの前にpauseコマンド(または後述のブレイクポイント)で待ちを作ってあげるとよさげ。

参考: Selenium Command Reference ja http://wiki.openqa.org/display/SEL/Command+Reference+ja

#なんで0.7のReferenceにはpauseコマンドが載っていないんだろう?

IE勝手に終了」対応

参考:assertEvalの活用方法(ブレイクポイント、終了通知) http://d.hatena.ne.jp/onozaty/20070103/p1

これは便利。

対応した機能を追加

Test01.html を修正

<html>
<head><title>Test 01</title></head>
<body>
  <table cellpadding="1" cellspacing="1" border="1">
    <tbody>
      <tr><td><b>Test 01</b></td></tr>
      <tr><td>open</td><td>(トップページのURL)</td><td></td></tr>
      <tr><td>type</td><td>id</td><td>(ID)</td></tr>
      <tr><td>type</td><td>password</td><td>(パスワード)</td></tr>
      <tr><td>click</td><td>id=(ログインボタンのID)</td><td></td></tr>
      <tr><td>pause</td><td>1000</td><td></td></tr>
      <tr><td>waitForPopUp</td><td>(次画面のウインドウID)</td><td>30000</td></tr>
      <tr><td>selectWindow</td><td>(次画面のウインドウID)</td><td></td></tr>
      <tr><td>verifyTitle</td><td>(次画面のタイトル)</td><td></td></tr>
      <tr><td>assertEval</td><td>alert('終了します。');true;</td><td>true</td></tr>
    </tbody>
  </table>
</body>
</html>