我正在使用 dbfit 并遇到问题。我正在做的大部分测试是不应该返回任何结果的查询。但是,当我将结果行留空并执行测试时,dbfit 告诉我正确结果为零,错误为零。
所以我正在寻找一种方法,如果它们没有返回结果,dbfit 会告诉我测试是正确的。如果有任何结果显示我可以看到它们(所以不要使用计数为零的断言)
我已经尝试过 fail[expected result] 方法,但似乎 dbfit 认为它就像使用查询的返回行断言的结果。不像保存的方法。
那我能做什么?谢谢
应该为您工作的是QueryStats
表格(抱歉,它没有记录,但验收测试套件中有一些示例):
!|Query Stats |
|query | row count? |is empty?|
|SELECT * from dual where 0=1 | 0 |true |
我知道我迟到了三年,但只是想我会发布一个替代答案,以防其他人遇到这个问题。
起初我打算实现 benilov 的方法,但后来我想到有一个更简单的方法。只需从表中选择记录数并断言,而不是尝试选择任何数据:
!|query|!-select count(*) RowCount from table where 0=1-!|
|RowCount?|
|0 |