つれづれなるままに。

webテストの自動化について備忘録のつもりで書いています

SeleniumIDE2.3.0 TABキーの入力がしたい

Selenium2.2.0 で specialkeyの入力ができなくなっていました。
ちなみにできなくなったのは、標準コマンドではなく
getEvalをつかって JavaScriptから直接キー入力のイベント発火をする方法です。

で、調べ回ってみると、 「2.3.0から コマンドでspcialKeyの入力に対応するよ〜」
みたいな書き込みが。英語力が泣きたくなるほどなのでそう解釈したのが正しかったのか?

で、リリースノートを見てみると

New - Recording for sendKeys command
New special keys support for sendKeys in Selenium IDE and webdriver playback - issue #6052
New - Special keys support to sendKeys in all official formatters - issue 6053

入っているように見える。
が、キーの指定方法がわからないぞ。helpにもでてこないし。。。

よくよく考えてみると、キー入力の方法がいくつかあります。
リファレンスを翻訳サイトにかけたものとあわせてみます。

●type

まるであなたがそれを入力したように、入力フィールドの価値をセットします。
これらの場合、コンボ・ボックス、チェックボックス、その他の価値をセットするのに用いられることもできます、価値は選択されたオプション(見えるテキストでない)の価値でなければなりません。

●typeKeys

まるであなたがキーでの価値キーを入力したように、指定された要素でキーストローク・イベントをシミュレーションします。
これは、指定された文字列であらゆる性格のためにkeyDown、keyUp、keyPressを呼ぶ便利な方法です; これは、露骨な鍵となるイベントを必要とするダイナミックなUI装置(コンボ・ボックスを自動完成するような)に役立ちます。
単純な「タイプ」コマンド(それは、直接指定された価格をページに押し込みます)と違って、タイピング・キーが通常見える影響を持つ場合さえ、この命令はどんな見える影響でも持つかもしれないか、持たないかもしれません。 たとえば、形要素で「typeKeys」を使うならば、あなたはフィールドで入力したものの結果がわかるかもしれないか、わからないかもしれません。
或るケースでは、あなたは、キーストローク・イベントをちょうど入力したものと一致しているのにするためにフィールドとそれから「typeKeys」命令の価値をセットするために単純な「タイプ」コマンドを使用する必要があるかもしれません。

●sendKeys

 実験的
まるであなたがキーでの価値キーを入力したように、指定された要素でキーストローク・イベントをシミュレーションします。
これは、指定された文字列であらゆる文字をタイプしている実ユーザーに扮します; それは、実ユーザー(貿易外収支にタイプするか、要素だけを読むことができないことのような)の規制にも束縛されます。 これは、露骨な鍵となるイベントを必要とするダイナミックなUI装置(コンボ・ボックスを自動完成するような)に役立ちます。
単純な「タイプ」コマンド(それは、直接指定された価格をページに押し込みます)と違って、この命令は、既存の内容に代わりません。 既存の内容を取り替えますたいのであれば、あなたはフィールドを掃除するためにフィールドの価値を空のストリングにセットするために単純な「タイプ」コマンドを使用する必要があります、そして、「sendKeys」はあなたが入力したいもののためにキーストロークを送るために命令します。
この命令は実験的です。 それは、将来typeKeys命令に代わるかもしれません。
typeKeys命令と違って、keyDown、keyUpとkeyPressイベントに火をつけようとする詳細に興味を持っている人々にとって、この司令部はSelenium 2から原子によって支持されて、将来維持されるずっと強い実施を提供します。

これ以外にも
keydown
keyUp
keyPress
もあるんですよね。



調べている途中でどれかに集約したい みたいなことが載っていた気がするのだけど。


specialKeyの送り込み方がわかる人いないかな〜