作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试上传带有 Robot 类和 selenium 网格的文件。
我可以在本地窗口中执行此操作,但是当我尝试在远程计算机中上传时,我无法通过远程计算机中的 StringSelection,StringSelection
在本地中已过去。
这是我的代码。
public static void adjFile1() throws AWTException {
Robot rbt = new Robot();
StringSelection path = new StringSelection(
"C:\\Users\\tpereira\\eclipse_git\\BCN_WorkFlow_1\\src\\test\\resources\\Archivos\\Contrato 2 FCB.pdf");
// create an object to desktop
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(path, null);
rbt.delay(2000);
// copy the path into mouse
rbt.keyPress(KeyEvent.VK_ENTER);
rbt.keyRelease(KeyEvent.VK_ENTER);
rbt.keyPress(KeyEvent.VK_CONTROL);
rbt.keyPress(KeyEvent.VK_V);
rbt.keyRelease(KeyEvent.VK_V);
rbt.keyRelease(KeyEvent.VK_CONTROL);
rbt.keyPress(KeyEvent.VK_ENTER);
rbt.keyRelease(KeyEvent.VK_ENTER);
@Then("^I attach the process documentation \"([^\"]*)\"$")
public void adjuntoDocumentacionDelProceso(String expectedMessage) throws Throwable {
JavascriptExecutor jse = (JavascriptExecutor) driver;
rbt = new Robot();
WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement upLoad = wait.until(ExpectedConditions.elementToBeClickable(By.xpath(adj_Doc)));
jse.executeScript("arguments[0].scrollIntoView();", upLoad);
upLoad.click();
Functions_w_1.adjFile1();
rbt.delay(1000);
String message = driver.findElement(By.xpath(popUp_Error_Solic)).getText();
System.out.println("Documento adjuntado correctamente: " + message.toString());
Assert.assertTrue("No se ha adjuntado el archivo!!!", message.contains(expectedMessage));
}
最佳答案
我可以使用此代码在虚拟机中远程使用 Selenium Grid 附加文件。现在我只需要关闭通过单击打开的窗口。
public void adjuntoDocumentacionDelProceso(String expectedMessage) throws Throwable {
JavascriptExecutor jse = (JavascriptExecutor) driver;
rbt = new Robot();
WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement upLoad = wait.until(ExpectedConditions.elementToBeClickable(By.xpath(adj_Doc)));
jse.executeScript("arguments[0].scrollIntoView();", upLoad);
upLoad.click();
rbt.delay(800);
driver.switchTo().activeElement().sendKeys("C:\\Users\\QABCN\\Documents\\contractos\\Contrato 1 FCB.pdf");
//functionsEspai.adjFile1();
rbt.delay(1000);
String message = driver.findElement(By.xpath(popUp_Error_Solic)).getText();
Assert.assertTrue("No se ha adjuntado el archivo!!!", message.contains(expectedMessage));
System.out.println("Documento adjuntado correctamente: " + message.toString());
}```
关于java - 如何使用java和selenium "Grid"在远程中传递StringSelection?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59200805/
我使用 StringSelection 和 Clipbaord 方法来粘贴字符串。 StringSelection selection = new StringSelection("myString"
我正在尝试将堆栈跟踪复制到 Android 中的剪贴板,以便当应用程序崩溃时,人们可以根据需要向我报告错误。我正在使用这个方法: StringWriter sw = new StringWriter(
我是一名优秀的程序员,十分优秀!