2011-10-21 44 views
1

我有一个简单的问题。硒:验证表格内容

我:

<td class="xxx">200</td> 
    <td class="xxx">200</td> 
    <td class="yyyy">100</td> 
    <td class="yyyy">100</td> 
在我的HTML

请告诉我,以确保一流的“XXX”的所有结果最好的,非侵入性的方式是200级的“YYYY”的所有结果是100

回答

0

使用

not('200' != //td[@class = 'xxx']) 
and 
    not('100' != //td[@class = 'yyyy']) 

XSLT - 基于验证

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:output method="text"/> 

<xsl:template match="/"> 
    <xsl:value-of select= 
    " not('200' != //td[@class = 'xxx']) 
    and 
     not('100' != //td[@class = 'yyyy']) 
    "/> 
</xsl:template> 
</xsl:stylesheet> 

WH烯应用这个XML文档上(您的片段包裹成一个顶部元件成为一个良好的XML文档):

<t> 
    <td class="xxx">200</td> 
    <td class="xxx">200</td> 
    <td class="yyyy">100</td> 
    <td class="yyyy">100</td> 
</t> 

产生

true 

当该XML文档上施加

<t> 
    <td class="xxx">200</td> 
    <td class="xxx">200</td> 
    <td class="yyyy">100</td> 
    <td class="yyyy">101</td> 
    <td class="yyyy">100</td> 
</t> 

再次的CORRE克拉结果产生

false 

说明

阅读关于the XPath operator !=

+1

这与硒有什么关系? – psousa

+0

@psousa:这是“关系到硒”这是与其他任何XPath引擎以同样的方式:只需评估与您的XPath引擎所提供的XPath表达式(在这种情况下,硒)。 –

+0

这里的上下文是端到端测试。因此,您不应该建议XPath断言呈现的文本,因为它可能不会被显示,转换或替换为影子DOM。 –