检查HTML包含通过xpath,Selenium IDE的文本

时间:2014-02-12 13:58:23

标签: html selenium xpath selenium-ide

<tr id="media_gallery_content-image-1" class="preview">
   <td class="cell-image">blqblq</td>
   <td class="cell-label" style="background-color: rgb(255, 255, 255);">
     <input class="input-text" type="text" onchange="media_gallery_contentJsObject.updateImage('/2/0/20499-1.jpg')" onkeyup="media_gallery_contentJsObject.updateImage('/2/0/20499-1.jpg')">
   </td>

这是HTML代码。到目前为止,我已经进行了以下xpath查询:

xpath=(//tr[@id="media_gallery_content-image-1"]/td[@class="cell-label"]/input)

它让我转到<input...>标记,我想检查它是否包含文本/2/0/20499-1.jpg。 这是我(我认为最好的)尝试之一:

<tr>
    <td>verifyText</td>
    <td>xpath=(//tr[@id=&quot;media_gallery_content-image-1&quot;]/td[@class=&quot;cell-label&quot;]/input)</td>
    <td>/2/0/20499-1.jpg</td>
</tr>

我在Firefox中使用 Selenium IDE 2.4.0

2 个答案:

答案 0 :(得分:2)

我没有看到标记中的文本因此无法查询它。

您可以尝试的是获取文本所在的属性值并在验证中使用通配符。

//tr[@id="media_gallery_content-image-1"]/td[@class="cell-label"]/input/@onchange

<td>*/2/0/20499-1.jpg*</td>

答案 1 :(得分:2)

如果我可以提出建议,请使用CSS。我认为您的xpath选择器可能无法正常工作,因为您在任意类上进行匹配。在运行时期间,类可能不是==。

此外,您的测试无法验证<input/>的文字。您需要验证value属性。

试试这个:

<tr>
    <td>verifyAttribute</td>
    <td>css=tr#media_gallery_content-image-1 input.input-text@value</td>
    <td>/2/0/20499-1.jpg</td>
</tr>