2012-07-03 103 views
6

我在FireFox中使用Selenium的IDE做了一些测试,我希望Selenium单击第二个链接(Text2)。任何想法我怎么做?不幸的是,我无法访问HTML并且无法修改它。记录功能似乎没有注册点击。Selenium点击链接

该代码附在下面。提前致谢!

<div class="class1"> 
    <div class="class2"> 
     <span class="class3"><a href="#" onclick="fn1();">Text1</a></span> 
    </div> 
</div> 

<div class="class1"> 
    <div class="class2"> 
     <span class="class3"><a href="#" onclick="fn2();">Text2</a></span> 
    </div> 
</div> 
+0

你有文本1在你的例子中两次... –

+0

我的错误 - 编辑。 – khalid13

回答

4

Selenium也支持link=Link Text定位器。如果您知道确切的链接文字,则可以使用此定位器,但不能以其他方式进行。所以对于上面的例子:link=text2link=View Previous Statements。 (有关其他定位器,请参见this sitethis site。)

+0

啊,这工作太谢谢你了!。! ! – khalid13

+0

@罗迪 - 在该链接文本应该给予什么? So i should give logout in Link Text? –

+0

@EmmanuelAngelo.R Let's say you have 'Click to Logout'。然后你的链接文本是“点击注销”。 –

1

你可以尝试

//a[contains(text(),'text2')]  OR //span/a[contains(text(),'text2')] 


寻找相同或别的什么吗?

+0

它不起作用 - 恐怕我对Xpath非常不熟悉。这到底是什么? – khalid13

+0

它会在标签a中找到text2,然后您可以点击该文本。 –

+0

获取任何错误? –

1

请忽略此信息。 Selenium忽略“Value”字段,并简单地选择第一个出现的span.class3。 对不起。在发布之前,我应该测试更多。

原帖: 我有一个类似的网页,并且我能够使用下面的硒IDE命令: 命令:clickAndWait 目标:CSS = span.class3 值:文本1

相关问题