硒 – 如何计算与CSS选择器匹配的元素数量?

我试图使用SeleniumRC测试我的GWT应用程序,并尝试使用CSS选择器匹配元素。

我想计算以下HTML中启用按钮的数量

如果某个按钮位于< td>之下,则启用按钮class =“x-panel-btn-td”,如果它位于< td>下,则禁用class =“x-panel-btn-td x-hide-offsets”。

所以基本上,我想用x-panel-btn-td类检索所有< td>下的按钮数量

<table cellspacing="0">
    <tbody>
    <tr>
        <td id="ext-gen3504" class="x-panel-btn-td ">
            <em unselectable="on">
                <button id="ext-gen3506" class="x-btn-text" type="button">OK</button>
            </em>
        </td>
        <td id="ext-gen3512" class="x-panel-btn-td x-hide-offsets">
            <em unselectable="on">
                <button id="ext-gen3506" class="x-btn-text" type="button">Yes</button>
            </em>
        </td>
        <td id="ext-gen3520" class="x-panel-btn-td">
            <em unselectable="on">
                <button id="ext-gen3506" class="x-btn-text" type="button">No</button>
            </em>
        </td>
        <td id="ext-gen3528" class="x-panel-btn-td x-hide-offsets">
            <em unselectable="on">
                <button id="ext-gen3506" class="x-btn-text" type="button">Cancel</button>
            </em>
        </td>
    </tr>
    </tbody>
</table>

解决方法

据我所知,您不能使用CSS选择器,但Selenium中有一个命令用于计算XPath。以下命令将验证有两个禁用按钮:
verifyXpathCount | //td[contains(@class,'x-hide-offsets')]//button | 2

在Selenium RC(Java)中,这看起来更像

assertEquals(selenium.getXpathCount("//td[contains(@class,'x-hide-offsets')]//button"),2);

相关文章

Css3如何实现鼠标移上变长特效?(图文+视频)
css3怎么实现鼠标悬停图片时缓慢变大效果?(图文+视频)
jquery如何实现点击网页回到顶部效果?(图文+视频)
css3边框阴影效果怎么做?(图文+视频)
css怎么实现圆角边框和圆形效果?(图文+视频教程)
Css3如何实现旋转移动动画特效