我需要接受一个网页浏览器弹出窗口,它会刷新网站。 我使用以下脚本来刷新网站 -
$(document).ready(function() {
$(".lineitem").each(function() {
function compute() {
var a = $('.a').val();
var b = $('.b').val();
var total = (a * b);
$('.total').text(total);
}
$('.b, .a').change(compute);
})
});
之后我使用下面的代码接受Web浏览器弹出窗口。
$(document).ready(function() {
$(".lineitem").each(function () {
function compute () {
var a = $(this).children('.a').val();
var b = $(this).children('.b').val();
var total = (a*b);
$(this).children('.total').text(total);
}
$('.b, .a').change(compute);
})}); */
但是我发现错误,因为未找到警报。 我相信重点不在于弹出窗口,这可能是原因。 有人可以帮我吗?
答案 0 :(得分:0)
如果您需要刷新页面,而不是使用F5的sendkey,您可以在Java中尝试以下
driver.navigate().refresh();
重新弹出弹出窗口,能够检查弹出窗口中的元素吗?如果你能够检查弹出窗口,那么它将是正常页面而不是警报。
交叉检查使用的定位器,尝试使用所需的等待显示确定按钮并且是任何框架内的按钮(iframe)。如果是在框架内,则在点击之前切换框架。在框架内完成工作后,切换回默认内容。
driver.switchTo().frame("provide frame name or location"); //switch to frame command
driver.switchTo().defaultContent(); //switch to default content command
//below is wait command
WebDriverWait wait=new WebDriverWait(driver, 120);
wait.until(ExpectedConditions.presenceOfElementLocated(By.id("id of ok")));
谢谢你, Murali G
答案 1 :(得分:0)
尝试直接点击确定..如果仍然无效,则检查是否存在任何框架..除了浏览器弹出窗口之外必须弹出一个应用程序..切换到警报在这种情况下不会工作
希望它会对你有所帮助:)。