Hamcrest中的stringContainsInAnyOrder匹配器?

时间:2015-11-02 15:44:29

标签: java hamcrest

在Hamcrest有StringContainsInOrder匹配器。

如何断言String包含任何顺序的字符串集合?

2 个答案:

答案 0 :(得分:3)

您可以合并多个contains匹配器。

assertThat("this is a string", allOf(
  contains("string"),
  contains("this"),
  contains("a")));

答案 1 :(得分:0)

由于Hamcrest如何检查收藏品,这是不可能的。

它正在迭代它,看这里: https://code.google.com/p/hamcrest/source/browse/trunk/hamcrest-java/hamcrest-library/src/main/java/org/hamcrest/text/StringContainsInOrder.java?r=375

你可以:

1)测试每个订单是否为短串(无效)

2)排序和测试几次,相信它将涵盖超过90%的案例(不充分)

希望它有所帮助。