使用selenium来阅读gmail上的电子邮件

时间:2009-11-15 16:11:27

标签: ajax xpath selenium gmail selenium-rc

我正在使用selenium-rc而我正在尝试点击gmail上的特定电子邮件以进入电子邮件页面。更具体地说:在Gmail邮箱上,单击包含特定主题的电子邮件。

我找不到正确的xpath(电子邮件部分中没有标签是链接)。想法?

4 个答案:

答案 0 :(得分:4)

将gmail更改为基本的html模式。

答案 1 :(得分:4)

这个XPath应该可以解决这个问题:

//div[@class = 'y6']/span[contains(., 'subject_here')]

... 提供您首先更改为canvas_frame框架。否则,它根本不可能发挥作用。如果您没有使用Firebug来检查HTML,那么您应该如此找到这些值。此外,Gmail结构会定期更改,因此y6类可能会在任何一天发生更改。

我没有对此进行测试,但这可能适合您:

open http://gmail.com
// do the login stuff, click on login
waitForElementPresent canvas_frame
selectFrame canvas_frame
waitForElementPresent //div[@class = 'y6']/span[contains(., 'subject_here')]
clickAt //div[@class = 'y6']/span[contains(., 'subject_here')] 0,0
// do stuff you care about

重要提示:您必须使用clickAt才能让Gmail意识到您正在点击。它只适用于简单的“点击”命令。

顺便说一句,我们这样做是为了我们自己对Gmail的内部监控,因为它在过去几个月里一直很不稳定。我们正在使用我的公司基于Selenium的free monitoring service,它允许您运行Selenium脚本来检查您网站的性能和功能。

答案 2 :(得分:0)

你的应用程序是偶然的Ruby on Rails吗?如果是这样,电子邮件规范是一种测试电子邮件的绝佳方式,而无需使用Gmail:http://github.com/bmabey/email-spec

答案 3 :(得分:0)

我使用了这个命令

clickAt | //table/tbody/tr/td[5]/div[@class='yW'] |

点击第一个/最近/最多邮件的FROM字段转到邮件详细信息页面。 //注意:第一封邮件为tr,第二封为tr [2],依此类推。