我是XPATH查询的新手。我使用RF和selenium2library以及chrome中的XPath Helper-plugin来测试某个网站页面。我也是HTML / CSS / JavaScript的新手。
该网页包含两个用于页面左侧和右侧的UL(列表),每个页面都有一些LI,这些LI具有由小部件(JPEG图像等)组成的很少的分区。
我需要统计此列表行(每个UL中的LI数量)。我已经在下拉菜单中做了同样的事情来计算它的元素没有问题(也许是因为它被考虑了 一个网络元素)。但是现在我使用相同的“获取匹配Xpath计数”,它几乎返回整个页面HTML源代码而不是数字,然后失败。
我的所有程序都是基于获取UL中的LI数量(下拉菜单,页面,表格......)。所以我想知道现在该做什么。以下是该页面HTML代码的示例:
<ul class="rqcol" id="col8a580456553ae">
<li class="rqportlet" id="por8a58045655">
<div id="hdrpor8a580" class="rqhdr" onmouseover="RQ.util.showTools(this)" onmouseout="RQ.util.hideTools(this)"> </div> </li>
<li class="rqportlet" id="por8a580456" >
<div id="hdrpor8a581" class="rqhdr" onmouseover="RQ.util.showTools(this)" onmouseout="RQ.util.hideTools(this)"> </div></li>
</ul>
我的代码是:
Get Matching Xpath Count | //ul[@id="ccol8a580456553ae"]/li
它确实给了我一些文本和HTML code.i也试过:
Get Length | //ul[@id="ccol8a580456553ae"]
这不会给我2但是很多。
答案 0 :(得分:0)
一个XPath 2.0表达式来计算&#39; li&#39;对于具体的&#39;&#39;将是:
//ul[@id="col8a580456553ae"]/count(li)
答案 1 :(得分:0)
试试这个新的Chrome扩展程序
https://chrome.google.com/webstore/detail/relative-xpath-helper/eanaofphbanknlngejejepmfomkjaiic
答案 2 :(得分:0)
您在id
值中输入了错字-开头有一个额外的“ c”字符;否则,xpath是正确的:
${count}= Get Matching Xpath Count //ul[@id="col8a580456553ae"]/li
顺便说一下,在最新版本的SeleniumLibrary中不推荐使用关键字Get Matching Xpath Count
,而推荐使用Get Element Count