如何使用 Selenium +Phantomjs 处理 Confirm

How to Handle Confirm With Selenium +Phantomjs

PhantomJSDriverService driverservice = PhantomJSDriverService.CreateDefaultService();
driverservice .LoadImages = false;
driverservice .HideCommandPromptWindow = true;
driverservice .AddArgument(@"page.onAlert = function(msg) {};");
driverservice .AddArgument(@"page.onConfirm = function(msg){return true;};");

IWebDriver driver = new PhantomJSDriver(driverservice);

以上方法无法处理确认。

我该怎么办?

JavascriptExecutor 对我有用。请注意,您应该在单击调用警报的事件之前执行它。

((JavascriptExecutor) driver).executeScript("window.confirm = function(msg) { return true; }");

注意:- 单击调用警报确认框的事件后不要使用它。上面的代码默认将确认框设置为 true 意味着如果调用

,您在该页面上的所有确认框上 accepting/click 都正常