如何在瀏覽器警報/對話窗口中輸入密碼。它在加載url時顯示。這不是一個基本的身份驗證提示,而是一個密碼提示,它會阻止與該頁面的任何交互,直到輸入密碼。我正在和水豚一起使用硒紅寶石。我曾嘗試以下:在對話框/提示中輸入密碼
page.driver.browser.switch_to.alert.send_keys("Password")
,但它不進入任何
如何在瀏覽器警報/對話窗口中輸入密碼。它在加載url時顯示。這不是一個基本的身份驗證提示,而是一個密碼提示,它會阻止與該頁面的任何交互,直到輸入密碼。我正在和水豚一起使用硒紅寶石。我曾嘗試以下:在對話框/提示中輸入密碼
page.driver.browser.switch_to.alert.send_keys("Password")
,但它不進入任何
如果你想填什麼是JS window.prompt
觸發,則你可以處理它像
page.accept_prompt(with: "The text to fill in") do
page.click_button "Go" # whatever action triggers the prompt to appear
end
系統模式相反,如果它是一個系統身份驗證模式(不是由JS打開的),那麼你不能從Capybara訪問它,如果你不能在URL中傳遞憑據,你將不得不使用一個完整的系統自動化工具,試圖訪問。
這可能會幫助你: -
字符串密碼= URLEncoder.encode( 「通行證」) ;
String UserName = URLEncoder.encode(「UserName」);
String url = String.format(「http://%s:%[email protected]」, UserName,Password);
在此%s是以參數的形式傳遞給url的變量。
這個答案不是很有幫助,並沒有回答這個問題。 –
那麼你試過了什麼? –
嘗試像這樣,如果它是一個警報'Alert alert = driver.switchTo()。alert(); alert.sendKeys( 「文本」); alert.accept();' –
我已經更新了我迄今爲止所嘗試的問題,它與您建議的類似但未起作用 – Rahul