0

私がテストしている Web サイトではユーザーのログインが必要であり、これは HTML フォームではなく Web サーバーによって処理されるため、ブラウザーで認証ポップアップが生成されます。

私は次のことをやってみました

before(:each) do      
  $browser = Watir::Browser.new :firefox    
  $browser.driver.manage.window.maximize        
  $browser.goto('http://qa.outbidhq.com')   
  popup = RAutomation::Window.new(:title => /Authentication/i)      
  popup.send_keys('XXXXXX') # USER ID 
  popup.send_keys :tab
  popup.send_keys('YYYYYYYYY') # PASSWORD
  popup.send_keys :tab
  popup.send_keys :enter            
  sleep(15) 
end  

しかし、コードが機能していません........ブラウザを起動しているときに、ユーザー名とパスワードが表示されたウィンドウのポップアップを処理する必要があります.....何か提案がありますか???? 私はRspecを初めて使用します...Rubyを使用しています

4

2 に答える 2

1

RAutomation は、watir によく似た API を使用して UI の自動化を提供するライブラリです。テキストフィールド、ボタンなどの概念を理解します。rdocを見ることができます、または新しいコードライブラリを学習するときに役立つと思うもう1つのことは、テストを見ることです

操作している UI ビットは非常に単純なので、インデックスで参照するだけでよいでしょう。

IRB を使用して少し実験することをお勧めします。これは、物事を試して何が起こるかを確認するための最良の方法です。ウィンドウを調べて、一度に 1 行のコードを試して何が起こるかを確認することがより簡単になります。このような結果になる可能性があります (テストされていません。キャンセル ボタンはインデックス 0 で、ログイン ボタンはインデックス 1 であると推測しています)。

popup = RAutomation::Window.new(:title => /Authentication/i)        
popup.text_field(:index => 0).set('XXXXXX') # USER ID 
popup.text_field(:index => 1).set('YYYYYYYYY') # PASSWORD
popup.button(:index => 1).click 
于 2013-05-09T16:03:32.170 に答える
1

HTTP Basic AuthenticationURL で rightのユーザー名とパスワードを指定できます。

$browser.goto('http://username:password@qa.outbidhq.com')

この場合、認証ダイアログは表示されず、すぐに認証されます。この機能のサポートはブラウザ自体に依存するため、 で試す前に、正しいユーザー名とパスワードで URL にアクセスして手動で試すことができますWatir

于 2013-05-19T17:19:28.853 に答える