1

如果是有序的,则可以测试整数列表:

assertThat(list).isOrdered();

但是如何测试它没有被订购呢?

有没有办法写:

assertThat(list).not().isOrdered();

或者更一般地说,有没有办法以方便的方式用真理否定断言?

4

1 回答 1

0

抱歉,我们一般没有办法执行否定断言。相反,我们提供一次性方法,例如doesNotContain当我们看到需求时。

部分原因是在“失败”路径期间运行的代码相当昂贵,因此经常运行它的用户(对于许多成功的测试)可能会感到不愉快。另一个原因是失败消息是在考虑“积极”情况的情况下编写的。出于这些原因,我的猜测是我们不会提供此功能,但请随时提交功能请求- 或专门提交一个isNotOrdered()。我认为我们还没有看到对此的请求,因此您可以提供有关您的用例的任何信息都会有所帮助。(特别是,我们习惯于看到不承诺以任何特定顺序返回数据的 API,但我们不习惯看到承诺返回无序数据的API :))

于 2019-04-15T13:43:00.350 回答