硒IDE和XPath - 查找文本/行表并选择单选框(Selenium IDE and xpath

2019-07-29 06:27发布

我一直在使用Selenium IDE和得到一些良好的效果。 我已经做了很多的阅读下列同胞和兄弟姐妹前面,但我无法找到合适的单选按钮。

基本上我想找到行字“测试”表,然后单击单元格的单选按钮。

到目前为止我可以找到输入按钮//输入[@类型=“无线电”]

并找到文本测试//一个[含有(文本(),“测试”)]

我一直试图在IDE中使用此

check | //input[@type='radio']/following-sibling::td[1]/a[contains(text(),'testing')]

但我得到的错误[error] locator not found: //input[@type='radio']/following-sibling::a[contains(text()[1],'testing')]

任何有助于改变这真是感谢:)

干杯

达米安

这里的裸基本表...

<tbody id="list">
<tr>
<th>
<label class="radio">
<input class="presentation_radio" type="radio" value="1" name="presentation_radio">
</label>
</th>
<td>
<a href="/link_to/document">testing </a>
</td>
<td>testing</td>
<td>Joe Acme</td>
<td>Presentation</td>
<td>03 May 2012</td>
<td>5 (1)</td>
</tr>
</tbody>

Answer 1:

您的XPath的问题是, tdinput都没有兄弟姐妹 (他们没有共同的父),即使你改变你的XPath来更正确的版本:

//input[@type='radio']/following::td[1]/a[contains(text(),'testing')]

它会找到a已前的复选框来代替复选框本身。 所以,正确的XPath将是:

//a[contains(text(),'testing')]/preceding::input[@type='radio'][1]

要么

//tr[descendant::a[contains(.,'testing')]]//input[@type='radio']

XPath的轴教程阅读: http://msdn.microsoft.com/en-us/library/ms256456.aspx



文章来源: Selenium IDE and xpath - find text / row in table and select radio box