【发布时间】:2021-09-12 13:32:58
【问题描述】:
我的用例是测试聊天应用程序。验证用户 A 从普通窗口发送消息,并验证用户 B 在隐身模式下成功接收。
如果在新选项卡或窗口中打开相同的内容,则相同的登录将适用于新选项卡或窗口。所以我希望它以隐身模式打开。
【问题讨论】:
标签: java selenium selenium-webdriver webdriver selenium-chromedriver
我的用例是测试聊天应用程序。验证用户 A 从普通窗口发送消息,并验证用户 B 在隐身模式下成功接收。
如果在新选项卡或窗口中打开相同的内容,则相同的登录将适用于新选项卡或窗口。所以我希望它以隐身模式打开。
【问题讨论】:
标签: java selenium selenium-webdriver webdriver selenium-chromedriver
如果您需要在隐身模式下打开一个新的 chrome 驱动程序,您可以在 java 中这样做:
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
capabilities.setCapability("chrome.switches", Arrays.asList("--incognito"));
WebDriver driver = new ChromeDriver(capabilities);
【讨论】:
要打开新标签,您可以这样做:
((JavascriptExecutor) driver).executeScript("window.open()");
记得打开后切换到它:
ArrayList<String> tabs = new ArrayList<String>(driver.getWindowHandles());
driver.switchTo().window(tabs.get(1));
现在您可以访问新标签页了。
更新 1:
有这个快捷方式:CTRL + N
WebElement body = driver.findElement(By.tagName("body"));
body.sendKeys(Keys.CONTROL + "n");
【讨论】: