请考虑以下情况并帮助我提出建议。
我无法摆脱Chrome中不需要的弹出式窗口。我不希望在打开应用程序后显示这些弹出窗口,因此尝试通过配置chrome驱动程序来阻止它们不允许任何弹出窗口!
以下是我要做的事情:
@BeforeMethod
public void setUp()
{
System.setProperty("webdriver.chrome.driver", path to chromedriver.exe file);
ChromeOptions options = new ChromeOptions();
options.addArguments("--disable-notifications","--enable-popup-blocking");
DesiredCapabilities cap = DesiredCapabilities.chrome();
cap.setCapability(ChromeOptions.CAPABILITY, options);
driver = new ChromeDriver(cap);
driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);
driver.manage().window().maximize();
}
@Test(enabled=true)
public void monsterTest()
{
driver.get("http://www.monsterindia.com");
driver.findElement(By.xpath("//*[@id='jobuser_wrap']/div[1]/div/div[1]/a[1]")).click();
driver.findElement(By.xpath("//*[@id='username_login']")).click();
driver.findElement(By.xpath("//*[@id='username_login']")).clear();
driver.findElement(By.xpath("//*[@id='username_login']")).sendKeys(uname);
//rest of the code to login and proceed with the test
}
但是在运行上面的脚本后仍会显示弹出窗口。我甚至尝试使用以下参数运行。
options.addArguments("--disable-notifications","--disable-popup-blocking");
令我惊讶的是,在这两种情况下都会显示弹出窗口而不管传递给它的参数。我甚至在这两次运行中手动检查了设置,但未发现设置有任何差异:
Settings--> Privacy--> Content Settings--> Pop_ups
请注意,如果我手动打开启用了弹出窗口阻止程序的应用程序,则不会显示弹出窗口。
我试图引用以下建议,但徒劳无功。
请告知我是否正确行事或我在这方面的理解是错误的。
我使用的是Chrome版本--57.0,Selenium绑定版本 - 3.0.1,Chromedriver版本 - 2.28
提前致谢。