我正在写硒驱动程序脚本。脚本的场景是:
1)登录www.yahoomail.com
2)成功登录。
3)点击“撰写”按钮
4)在“收件人”字段中输入电子邮件ID。
5)输入主题“主题领域。
6)在输入电子邮件正文 “文本” 字段。
7)点击 “发送” 按钮。
如何处理每次动态更改的Xpath?
使用Firepath,我已经采取了上述领域的的XPath 。在“撰写”页面 但每次当我打开撰写页面时,这种动态的XPath变化
下面是我使用的脚本:
WebDriver oYahoo = new FirefoxDriver();
oYahoo.get("http://www.yahoomail.com/");
oYahoo.manage().window().maximize();
oYahoo.findElement(By.xpath(".//*[@id='login-username']")).sendKeys("[email protected]");
oYahoo.findElement(By.xpath(".//*[@id='login-passwd']")).sendKeys("[email protected]");
oYahoo.findElement(By.xpath(".//*[@id='login-signin']")).click();
oYahoo.findElement(By.xpath(".//*[@id='Compose']/button")).click();
oYahoo.findElement(By.xpath(".//*[@id='yui_3_16_0_1_1448364357109_2222']")).sendKeys("[email protected]");
oYahoo.findElement(By.xpath(".//*[@id='subject-field']")).sendKeys("Hi This is my first automated mail");
oYahoo.findElement(By.xpath(".//*[@id='yui_3_16_0_1_1448364357109_1966']")).sendKeys("Hi This is my first automated mail");
oYahoo.findElement(By.xpath(".//*[@id='yui_3_16_0_1_1448364357109_2465']")).click();
oYahoo.quit();
我们可以这样做它会动态地使用Xpath?我们是否需要在某些课堂上绘制这些东西?我们是否必须为“撰写”弹出窗口编写任何其他类? 如果“是”,那我们该怎么做呢?
这是自动化的基本问题。我建议你做一些事情,比如找到像“yui_ *”这样的id的“第一个”元素。或者找到一个你可以找到其子的基本元素。 – DMart