我正在为一个手风琴测试用例苦苦挣扎。
协调主要旨在断言数据的值符合预期。但是,每隔一段时间,您需要在HTML上显示一些仅供查看的数据(也许这样,对于仅阅读HTML的人来说,测试用例就更具可读性)。
就我而言,我需要查询一个表并显示一些数据。我不需要断言数据是某个特定值(发生在手风琴下方的某个位置)。
<table concordion:verifyRows="#aCollection : getSomeBunchOfDataFromDB()">
<tr>
<th concordion:echo="#aCollection.firstRow">1st</th>
<th concordion:echo="#aCollection.secondRow">2nd</th>
<th concordion:echo="#aCollection.thirdRow">3rd</th>
<th concordion:echo="#aCollection.fourthRow">4th</th>
</tr>
现在,这可以正常工作。但是,有一个陷阱。当前格式的代码需要一堆行。因此,它期望一堆trtds可以显示数据。因此,基本上,我必须提供一堆空的trs(精确地是我希望从数据库中获得的行数。
<tr>
<td />
<td />
<td />
<td />
</tr>
<tr>
<td />
<td />
<td />
<td />
</tr>
这可行。但是,当然,这是骇人听闻的。我无法找到某种方法来完成这项工作(即在Concrodion HTML中显示一堆结果集),而又不需要一堆空的trtd。
如果有人遇到问题和/或解决了类似问题,请回发。
最佳答案
您可以尝试使用embeded extension进行手风琴演奏。
所以你会添加
@Extensions(EmbedExtension.class)
对于您的类,然后可以使用方法
getSomeBunchOfDataFromDBFormatedAsHtml
,该方法返回带有html代码的字符串,其中包含由循环生成的<td>
并显示以下表格:<span ext:embed="getSomeBunchOfDataFromDBFormatedAsHtml()"/>