2012-04-23 78 views
0

我想知道是否有可能获得元素的xpath,例如link =“Edit”。Selenium:通过链接等属性获取元素的xpath

使用硒我可以做到这一点。

说明:

我知道在页面上有与文本“编辑”的链接。所以使用硒,我可以动态地找到它,使得link="Edit",但现在我在我的RC中有这个链接,并希望循环它使用它的xpath,这样我可以在链接所在的同一行中获取内容。

我想在不同的场景和不同的元素中实现这些东西。 我应该能够使用元素的属性获取元素的xpath,id,css。

请帮助,让我知道是否有可能使用一些java脚本,否则我使用Selenium RC与PHP。如果可能的话,我应该能够整合东西。

在此先感谢。

+0

后您记录Selenium IDE的一个动作,它可以让你选择类型的选择器你想用于每个目标..我不知道硒的RC,但它已被正式弃用 - 尝试切换到Selenium WebDriver,如果可能:)) – Aprillion 2012-04-23 06:34:52

+0

感谢您的答复,但我动态检查是否元素出现在表格中的任何条目中,如果链接存在,我必须记录该条目的名称。那么有没有办法在旅途中获得xpath? – lAH2iV 2012-04-23 06:59:39

+1

我相信你真正想要的是花一些时间学习[XPath](http://en.wikipedia.org/wiki/XPath)和/或[CSS选择器](http://en.wikipedia.org/wiki/CSS_selector#语法)以及他们可以做什么。尝试谷歌搜索,当然,最深(但仍然非常可读)的规格:[XPath 1.0](http://www.w3.org/TR/xpath/)和[CSS 2选择器](http:/ /www.w3.org/TR/CSS2/selector.html)。 – 2012-04-23 10:33:10

回答

1

我不知道“在路上”创建XPath表达式的,但是这是一个XPath等效link="Edit"在硒:

 
//a[contains(text(), 'Edit')]/.. 
+0

谢谢,但这不会帮助我,因为这会让我只有链接定位器,我将无法获得与此相同的行中存在的值。 – lAH2iV 2012-04-23 07:43:51

+1

@ lAH2iV如果你的父母是“相同的行”,你可以看到更新后的回答为相对路径'/'后面是父母表达式'..' – Aprillion 2012-04-23 07:50:46

+0

:我们的坦克帮助你使用这个'// a [contains(text() ,'编辑')]] /../../ td [3]'我可以得到编辑按钮出现的位置。再次感谢。所以使用包含我可以得到标签和按钮? – lAH2iV 2012-04-23 10:08:51

相关问题