Selenium:动态按钮和类?

时间:2009-11-03 02:22:01

标签: java javascript unit-testing selenium testcase

所以,我在网站上试用了一个测试用例,Selenium完美地记录了这些事件。现在,如果我必须搜索特定的类并获取该类的innerHTML,假设我使用Java作为驱动语言,我该怎么做呢?

更清楚。我有一个这样的课:

  

<h1 class="classname">.....</h1>

我想在这些标签之间获取整个文字。

最后,如果页面上按钮的ID是动态生成的,我该如何测试它们上的点击操作?这些按钮,我猜是使用ajax。当我点击按钮时,Selenium生成了这个:

//div[@id='c4aef94de622f51859827294']/div/div/div[1]/span[2]/span/span[3]/a

按钮的实际HTML是:

<a href="#" bindpoint="forward" class="ButtonForward"/>

甚至可以点击按钮吗?

1 个答案:

答案 0 :(得分:2)

您可以使用getHtmlSource命令获取整个HTML源代码,然后使用其他内容来解析Java中的HTML并提取目标元素的内容。

您可以在不使用ID的情况下找到元素,例如,如果这是您可以找到它的页面上唯一的此类按钮:

使用CSS定位器:

selenium.click("css=a.ButtonForward");

使用XPath定位器:

selenium.click("xpath=/descendant::a[@class='ButtonForward']");