如何使用Java禁用Selenium Webdriver上的所有断点?

时间:2019-06-24 09:38:13

标签: java selenium selenium-webdriver

我想用Java禁用Selenium Webdriver上的所有断点(来自debugger; JavaScript目标应用程序)。我的目标应用程序每x秒运行一个断点并停止我的硒运行

enter image description here

ChromeOptions options = new ChromeOptions();
options.addArguments("start-maximized");
options.addArguments("disable-infobars");
options.addArguments("--disable-extensions");

options.addArguments("--disable-  ???? ");     <= ???????

WebDriver driver = new ChromeDriver(options);
driver.get("http://rd.huangpuqu.sh.cn/website/html/shprd/shprd_tpxw/List/list_0.htm");

您可以找到所有选择项here,但我找不到此功能。

编辑:

我尝试这样做(通过Javascript通过JavascriptExecutor),但是不起作用:

((JavascriptExecutor) driver).executeScript("debugger; = function(){};");

((JavascriptExecutor) driver).executeScript("debugger = function(){};");

((JavascriptExecutor) driver).executeScript("window.debugger = function(){};");

编辑2:

我尝试通过javascript解决此问题,但不起作用:

stackoverflow:How to disable debugger; command in JS?

调试器不是JavaScript成员,不能被覆盖。

编辑3:

同时,我在硒库here上问了一个新问题

1 个答案:

答案 0 :(得分:0)

调用脚本重新定义 debugger 似乎是个好主意,但我认为您可以尝试以下方法:

((JavascriptExecutor) driver).executeScript("debugger = function(){};");

或:

((JavascriptExecutor) driver).executeScript("window.debugger = function(){};");