kukulsz 发表于 2013-7-9 11:38:00

Selenium Click() 其它按钮

最近遇到一个很奇怪的问题,用Selenium 的 Click()方法去点击一个按钮,实际运行却点击了另外一个按钮。
页面和HTML结构如截图。


我的实现方式是先通过FindElement(By.XPath("//*[@title='New Document']"))定位到New Document button(实际是一个link),就是那个+ 图标,再用Click()方法去点击它。
运行的时候却点击了前面的齿轮图标,HTML里面齿轮图标是title="Project Tools".一直搞不懂什么原因。
我的实现代码如下:

BrowserDriver.Driver.SwitchTo().Frame(frame);
BrowserDriver.Driver.FindElement(By.XPath("//*[@title='New Document']")).Click();
            string title = BrowserDriver.Driver.FindElement(By.XPath("//*[@title='New Document']")).GetAttribute("title");


最后title获取的结果也是New Document.而且有意思的是,我尝试用@title=‘Contacts’,有时候它能点到New Document, 有时候又点到Search,太迷惑了。

goal1860 发表于 2013-7-15 09:55:05

把 *改成a试试
页: [1]
查看完整版本: Selenium Click() 其它按钮