maven - 如何使用 Selenium java 通过 GMail 自动发送附件
问题描述
我是第一次进行自动化测试,我希望能够自动化 gmail 并发送带有附件的电子邮件。我正在使用 selenium 网络驱动程序、黄瓜和谷歌浏览器来运行测试。我的 IDE 是 IntelliJ。我的测试一直有效,直到我必须附加文件:
public void givenOnAmazonProductPage() throws Throwable {
setupSeleniumWebDrivers();
goTo(PRODUCT_URL);
driver.findElement(By.id("identifierId")).sendKeys("username");
driver.findElement(By.xpath("//span[@class='RveJvd snByac']")).click();
Thread.sleep(3000);
driver.findElement(By.name("password")).sendKeys("password");
driver.findElement(By.xpath("//span[@class='RveJvd snByac']")).click();
Thread.sleep(4000);
goTo(PRODUCT_URL);
//driver.wait().until(ExpectedConditions.elementToBeClickable(By.xpath(".//textarea[contains(@aria-label, 'To')]")));
driver.findElement(By.xpath(".//textarea[contains(@aria-label, 'To')]")).click();
driver.findElement(By.xpath(".//textarea[contains(@aria-label, 'To')]")).sendKeys("abcd@gmail.com");
driver.findElement(By.name("subjectbox")).click();
driver.findElement(By.name("subjectbox")).sendKeys("efgh");
driver.findElement(By.xpath("(.//*[@aria-label='Message Body'])[2]")).click();
driver.findElement(By.xpath("(.//*[@aria-label='Message Body'])[2]")).sendKeys("This is an auto-generated mail");
//driver.findElement(By.xpath("//span[@class='T-I J-J5-Ji T-I-KE L3']")).click();
//driver.close();
//click on attachment
driver.findElement(By.xpath("//div[@class='a1 aaA aMZ']")).click();
//use autoit tool to attach a file
这是我尝试附加桌面上的文件但它似乎不起作用的地方
Runtime.getRuntime().exec("C:Desktop/6c3bfdec92fad54896275802f938bd83.29.jpg");
// enter the file path onto the file-selection input field
Thread.sleep(10000); //wait for 10sec to upload file
}
有谁知道我在附加文件时做错了什么?
解决方案
这应该是您的autoit
.exe 路径而不是 .jpg 路径。您需要创建(.exe)
您的 autoit 脚本的可执行文件并通过我已经提到的。
Runtime.getRuntime().exec("path of Autoit exe"); // like "C:\\AutoIt3\\new.exe"
推荐阅读
- ggplot2 - 如何使用值来创建堆叠条形图?
- angular - 我们如何绑定来自存储的数据,例如ngrx(Angular)
- python - 字节数组编码,数据歪曲
- javascript - 根据单击的按钮为模式中的输入提供一个值
- c# - 在response.redirect到相同的URL之后如何在asp.net标签中保留一个值
- mxgraph - 在 mxGraph 中移动组成元素上移动父顶点
- java - 对同一属性具有多个过滤器的 Mongo 查询不适用于 JAVA
- c# - 截图时驱动为空
- spring - 循环通道以更新标头丰富器以将文件放置在多个目标中
- python - ValueError:只能比较熊猫中标记相同的系列对象