webdriver移除所有alert - 简单粗暴

本文介绍了一种在自动化测试中禁用页面alert弹窗的方法,通过重新定义alert为一个空函数,使得页面上的alert不再弹出,适用于解决自动化测试中因未知的ajax请求完成时间而导致的alert干扰问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

很多时候我们在进行自动化测试的时候,总会遇到页面alert弹窗,特别是在当你点击某个按钮,发送一个ajax请求,请求成功之后然后弹出一个alert 提示你 XXX成功,我们不知道这个ajax什么时候执行完成,我找了很多种办法都不好使,然后我百度js 如何关闭alert ,突然在简书上看到一个大神给出的方案:

就是直接把alert 重新定义了一下,然后我就在webdriver试了一下,果然 alert 没了 没了 没了……

 

以下是 java 代码:

 

System.setProperty("webdriver.chrome.driver", "C:\\Users\\Administrator\\Desktop\\test\\chromedriver.exe");

WebDriver driver = new ChromeDriver();

driver.get("http://localhost:8080/xxxx");

 

//重新定义alert为空函数

String js = "window.alert=function(){};";//定义一个js

JavascriptExecutor jse=(JavascriptExecutor)driver;

jse.executeScript(js);//执行js  

           

Thread.sleep(2000);

System.out.println(driver.getPageSource());

//click 这句话我在自己项目中页面 加了个alert,点击之后果断失效,弹不出来。。。

driver.findElement(By.xpath("//input[@value='登 录']")).click();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值