2012-04-06 33 views
6

RubyでSelenium WebDriverを使用して自動テストを行っています。私はボタンをクリックする必要があります。ボタンが透明なので、id、css、またはxpathでボタン要素を取得することはできません。 TabキーとEnterキーを使ってボタンを押したいと思います。Tabキーを押して、Enterキーを押すとRubyでSelenium WebDriverが表示されます

私は以下のようにボタンを取得するには、Tabキーを使用することができます。element.send_keys @

を:タブ @Element - >任意のjavascriptの要素の可視ブラウザで

をしかし、どのように、私は入力してください使用しませんボタンをキーしますか?

基本的にTabキーを押してEnterキーを押してボタンをクリックする必要があります。

私はセレンwebdriverを@driver =セレン:: WebDriver.for使用しています:Firefoxの

を助けてください。前もって感謝します。心の中で

答えて

2

キーピング抜粋:

私は

element.send_keys @

としてボタンを取得するには、Tabキーを使用することができます

:タブ

@Element - >のいずれかのjavascriptの要素が見えます ブラウザ

ボタンにはどのようにEnterキーを使用しますか?

ボタンのEnterキーを使用するには、Ruby hereを使用して提供されたソリューションのいずれかを試すことができます。これは基本的に、:enterの値ではなくの値を送信することについて話します。具体的には@element.send_keys :returnといくつかの追加情報です。

更新日:

私は概念的にhere提供する情報を使用して問題を実装しようとするJavaでいくつかのコードを提供することができます。対応するRuby Selenium APIの翻訳を試みることができます。

コード:

アクションビルダー=新しいアクション(ドライバ);

builder.sendKeys(elementVisible、Keys.TAB).sendKeys(Keys.RETURN);

アクションsubmitTheTransperentButton = builder.build();

submitTheTransperentButton.perform(); Rubyのuser1316のコードで

+0

それが助けをdoesnot。私の場合は、私はボタン要素を得ることができないということです。しかし、私はまだボタンをクリックする必要があります。これを達成するための他の良い方法はありますか?ありがとうございます – AJJ

+0

私は以前のソリューションを更新するつもりです。それが役に立てば幸い。 – Ziran

5

driver.action.send_keys(elementVisible, :tab).send_keys(elementVisible, :return).perform 
0

送信のように見えるがルビーでENTER:

@browser.action.send_keys("\n").perform 
関連する問題