Class Selenium:验证表的内容
我有一个简单的问题 我有:Class Selenium:验证表的内容,class,selenium,xpath,html-table,Class,Selenium,Xpath,Html Table,我有一个简单的问题 我有: <td class="xxx">200</td> <td class="xxx">200</td> <td class="yyyy">100</td> <td class="yyyy">100</td> 200 200 100 100 在我的html中 什么是确保类“xxx”的所有结果都是200,类“yyy”的所有结果都是100的最佳非侵入式方
<td class="xxx">200</td>
<td class="xxx">200</td>
<td class="yyyy">100</td>
<td class="yyyy">100</td>
200
200
100
100
在我的html中
什么是确保类“xxx”的所有结果都是200,类“yyy”的所有结果都是100的最佳非侵入式方法 使用:
not('200' != //td[@class = 'xxx'])
and
not('100' != //td[@class = 'yyyy'])
<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>
true
<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>
false
基于XSLT的验证:
not('200' != //td[@class = 'xxx'])
and
not('100' != //td[@class = 'yyyy'])
<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>
true
<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>
false
应用于此XML文档时:
not('200' != //td[@class = 'xxx'])
and
not('100' != //td[@class = 'yyyy'])
<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>
true
<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>
false
说明:
not('200' != //td[@class = 'xxx'])
and
not('100' != //td[@class = 'yyyy'])
<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>
true
<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>
false
阅读有关这与Selenium有什么关系?@psousa:这与Selenium“有关系”,就像它与任何其他XPath引擎有关系一样:只需使用XPath引擎(在本例中是Selenium)计算提供的XPath表达式。这里的上下文是端到端测试。因此,您不应该建议使用XPath来断言呈现的文本,因为它不能被影子DOM显示、转换或替换。@FlorentB。不同的读者可以用不同的方式解释这个问题。问题的作者确实接受了这个答案,这意味着这个答案解决了他的问题。当然,可以提出一个新的、相关的/类似的问题,重点是端到端测试和测试框架使用的对象模型方面的额外验证。对于经验丰富的测试人员,有一种正确的方法来解释这个问题,因为在标题中明确提到了Selenium。即使它看起来确实有效,但并不意味着它将实现预期目标。这个答案不符合有效测试的条件,会把其他观众引向错误的方向。