Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ajax 使用selenium阅读gmail上的电子邮件_Ajax_Xpath_Selenium_Gmail_Selenium Rc - Fatal编程技术网

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

Ajax 使用selenium阅读gmail上的电子邮件,ajax,xpath,selenium,gmail,selenium-rc,Ajax,Xpath,Selenium,Gmail,Selenium Rc,我正在使用selenium rc,我试图点击gmail上的一封特定电子邮件,以便进入电子邮件页面。更具体地说:在gmail收件箱中,点击带有特定主题的电子邮件 我找不到正确的xpath(电子邮件部分中的标记都不是链接)。想法?将gmail更改为基本html模式。你的应用程序是不是碰巧是Ruby on Rails?如果是这样的话,email spec是一种测试电子邮件的好方法,而不必在Gmail上乱来:这个XPath应该可以做到: //div[@class = 'y6']/span[contain

我正在使用selenium rc,我试图点击gmail上的一封特定电子邮件,以便进入电子邮件页面。更具体地说:在gmail收件箱中,点击带有特定主题的电子邮件


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

将gmail更改为基本html模式。

你的应用程序是不是碰巧是Ruby on Rails?如果是这样的话,email spec是一种测试电子邮件的好方法,而不必在Gmail上乱来:

这个XPath应该可以做到:

//div[@class = 'y6']/span[contains(., 'subject_here')]
。。。前提是您已首先更改为画布框架。否则,它根本不可能起作用。如果您没有使用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进行内部监控,因为在过去的几个月里,Gmail非常不稳定。我们使用的是基于Selenium的my Companys,它允许您运行Selenium脚本来检查站点的性能和功能。

我使用了这个命令

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

单击第一封/最近一封/最上面一封邮件的发件人字段,转到邮件详细信息页面。//注意:tr代表第一封邮件,tr[2]代表第二封邮件,依此类推。

你为什么这样使用gmail?我自己也这么问。你试过Gmail快捷方式吗?它们让你的工作效率更高:与其从用户界面上阅读gmail,不如尝试使用API-works。。但我希望有更复杂的东西你到底在干什么?一定有更好的办法!基本模式当然会起作用,但我认为使用XPath进行创新要有趣得多:)