Selenium Core のテストケースでタブ入力を行う方法。
Web アプリケーションの自動テストツール Selenium Core でタブの入力を行いたい。TABは通常ブラウザでは入力できないが、コピー&ペーストで入力されたタブをエラーとしてはじく機能のテストのため。
Selenium IDE(Firefox のプラグイン版)だとテストケースに設定したタブはタブ入力として扱ってくれるのだが、別のブラウザでテストケースを実行する場合、ブラウザベースの Selenium Test Runner を使用するため、タブ(および他のホワイトスペースも)ひとつの半角スペースとして扱われてしまい期待どおりのテストができない。
この回避方法。JavaScript を使って変数にタブを登録(sotre)しておく事によって解決。
タブがうまく入力できないテストケースの書き方
<tr>
<td>type</td>
<td>subject</td>
<td>コピーして タブを入力します</td>
<!– ブランク部分にはタブが入力されている –>
</tr>
<td>type</td>
<td>subject</td>
<td>コピーして タブを入力します</td>
<!– ブランク部分にはタブが入力されている –>
</tr>
タブが期待どおり入力できるテストケースの書き方
<tr>
<td>store</td>
<td>javascript{String.fromCharCode(9)}</td>
<td>tab</td>
</tr>
<tr>
<td>type</td>
<td>subject</td>
<td>JavaScriptを利用して${tab}タブを入力します</td>
</tr>
<td>store</td>
<td>javascript{String.fromCharCode(9)}</td>
<td>tab</td>
</tr>
<tr>
<td>type</td>
<td>subject</td>
<td>JavaScriptを利用して${tab}タブを入力します</td>
</tr>