Selenium:如何将URL粘贴到新选项卡上-Java
我正在努力想办法将文本/URL粘贴到Chrome的新标签上。我正在Linux上以无头模式运行测试。 因此,我可以启动一个新选项卡,但无法将URL粘贴到导航栏上 为什么我要粘贴URL?我必须点击一个按钮,它会给我一个URL,我必须启动一个新的标签上的URL 这是我试图让它工作的代码Selenium:如何将URL粘贴到新选项卡上-Java,java,selenium,selenium-webdriver,ui-automation,Java,Selenium,Selenium Webdriver,Ui Automation,我正在努力想办法将文本/URL粘贴到Chrome的新标签上。我正在Linux上以无头模式运行测试。 因此,我可以启动一个新选项卡,但无法将URL粘贴到导航栏上 为什么我要粘贴URL?我必须点击一个按钮,它会给我一个URL,我必须启动一个新的标签上的URL 这是我试图让它工作的代码 copyBtn.click(); //copying the URL ((JavascriptExecutor) driver).executeScript("window.open()&qu
copyBtn.click(); //copying the URL
((JavascriptExecutor) driver).executeScript("window.open()");// launching a new tab
SeleniumUtils.switchBrowserTab(driver, 1);
Actions actions = new Actions(driver);
actions.sendKeys(Keys.COMMAND, "v").sendKeys(Keys.ENTER).build().perform(); //sending the paste command
System.out.println(driver.getCurrentUrl());
系统输出打印的是about:blank
,而不是粘贴的文本。我想这是因为我没有把注意力集中在导航栏上。我准备了很多博客,但似乎没有办法专注于导航栏。
有人能告诉我们这个用例是如何实现的吗
另外,我手边没有URL,老实说,我不知道如何获得复制的URL。因为我没有在本地运行,所以无法使用ToolKit。
谢谢。这个我用了很多:
public void openNewTab(WebDriver driver) throws InterruptedException {
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("window.open('');");
Thread.sleep(100);
}
public void gotoTab(WebDriver driver, int tabIndex) throws InterruptedException {
List<String> winHandles = new ArrayList<>(driver.getWindowHandles());
Thread.sleep(500);
driver.switchTo().window(winHandles.get(tabIndex));
}
如果您有url,那么如何:将
“window.open()”
替换为“window.open”(“+url+”)”
我手边没有url,单击按钮复制url。我不知道怎样才能找回它。另外,copyBtn.getText()
没有提供复制的URL。请尝试使用java剪贴板库
WebDriver driver = ...;
openNewTab(driver);
gotoTab(driver, 1); // zero based
driver.get("...");