尝试在Selenium IDE中单击具有特定值的行的超链接

时间:2013-02-28 14:30:57

标签: html xpath selenium-ide

我是Selenium的新手,我需要做两件事 1.记下html上的文件名,但它是字符串的一部分,所以不知道如何在Selenium IDE中连接它 2.在表格中,在搜索相关文件后,我想点击该行的其他列之一的链接。所以对于EMED.pdf文件,我想点击Requested链接

HTML片段:

<td>
<a class="OSfileLink" target="selenium_blank7934" href="/Practice/DownloadFile/8057329d-21df-4a44-baee-2068fc01b7dd" rel="EMED.pdf" style="background-color: transparent;">EMED.pdf</a>
</td>
<td></td>
<td> 27/02/2013 16:19:16 </td>
<td>
<a class="eApproval " data-toggle="modal" data-fileid="8057329d-21df-4a44-baee-2068fc01b7dd" href="#" rel="Requested (28/02/2013)" style="background-color: transparent;">Requested (28/02/2013)</a>
</td>

到目前为止,我有:

命令:点击 目标:// a [contains(text(),'Requested')] / following-sibling :: a [contains(text(),'EMED.pdf')] 价值:

这会出现错误: [error]元素// a [contains(text(),'Requested')] / follow-sibling :: a [contains(text(),'EMED.pdf')] not found

我可以单独“查找”单个xpath,但它们不能一起工作。任何帮助将不胜感激。

  • 编辑 连接仍然没有乐趣,但可以通过识别点击来解决它。 任何有关连接的帮助都会得到很多应用

* 编辑 连接:用于:href =“/ Practice / DownloadFile / 8057329d-21df-4a44-baee-2068fc01b7dd” 我想要整个链接中的guid:8057329d-21df-4a44-baee-2068fc01b7dd。

由于

2 个答案:

答案 0 :(得分:0)

您的订单似乎已被替换,请尝试将following-sibling替换为preceding-sibling。另请注意,您需要<a>个节点,但是以下兄弟函数正在检查<a>之后的下一个节点,即<td>,因此您需要从{{1}开始节点并检查。{/ p>中每个<td>节点的内容

或者相反,您可以更改您正在开始搜索的节点。如果你想要“EMED.pdf”,但只有当下一个节点是“请求”时,尝试这样的事情:

<a>

答案 1 :(得分:0)

基于你提出的html,我认为这有效,我用firefox xpath测试器测试了它

  

// [TD [A [含有(文本(), 'EMED.pdf')]]] //一个[含有(文本(), '请求')]