Java 如何在代码中表达这个特殊的数组断言?

Java 如何在代码中表达这个特殊的数组断言?,java,junit,testng,fest,assertj,Java,Junit,Testng,Fest,Assertj,我目前正在使用FEST或AssertJ进行断言。 我遇到了一个结,我想断言流动数组: [1,2,2,2,2,2,2] 那么,我如何编写这样的断言呢 assertThat(arr).contains(1,atIndex(0)).containsTheOthers(2) 我在节日里看不到其他人或者我错过了同等的东西? 我有点惊讶FEST或AssertJ不能从指定的索引开始断言一系列索引,因为它们强调流畅简洁的断言代码。 还是有好的选择 我必须将它分为两个断言,并手动取出第一个要检查的元素和n个要

我目前正在使用FEST或AssertJ进行断言。 我遇到了一个结,我想断言流动数组:

[1,2,2,2,2,2,2]
那么,我如何编写这样的断言呢

assertThat(arr).contains(1,atIndex(0)).containsTheOthers(2)
我在节日里看不到其他人或者我错过了同等的东西? 我有点惊讶FEST或AssertJ不能从指定的索引开始断言一系列索引,因为它们强调流畅简洁的断言代码。 还是有好的选择

我必须将它分为两个断言,并手动取出第一个要检查的元素和n个要检查的其他元素,总共三行。真是一团糟

assertThat(arr[0]).contains(1,atIndex(0));
Arrays.copyOfRange(arr,1,arr.length);
assertThat(arr).containsOnly(2);

为什么要把事情复杂化?写这篇文章的最简单方法是:

assertEquals(new int[]{1,2,2,2,2,2,2}, arr);

否则,如果可以有任意数量的2,那么将其分成两个断言的第二种解决方案似乎是明智的。

为什么要使事情复杂化?写这篇文章的最简单方法是:

assertEquals(new int[]{1,2,2,2,2,2,2}, arr);

否则,如果可以有任意数量的2,那么将其分成两个断言的第二种解决方案似乎是明智的。

为什么要使事情复杂化?写这篇文章的最简单方法是:

assertEquals(new int[]{1,2,2,2,2,2,2}, arr);

否则,如果可以有任意数量的2,那么将其分成两个断言的第二种解决方案似乎是明智的。

为什么要使事情复杂化?写这篇文章的最简单方法是:

assertEquals(new int[]{1,2,2,2,2,2,2}, arr);

否则,如果可以有任意数量的2,那么将其拆分为两个断言的第二个解决方案似乎是明智的。

使用AssertJ,我将写:

资产(arr).实际包含(1,2,2,2,2,2);
但请注意,它还将检查元素顺序

仅供参考,AssertJ还提供以下“包含”断言:

  • 包含序列
  • 包含顺序
  • 集装箱

使用AssertJ查看一下

,我会写:

资产(arr).实际包含(1,2,2,2,2,2);
但请注意,它还将检查元素顺序

仅供参考,AssertJ还提供以下“包含”断言:

  • 包含序列
  • 包含顺序
  • 集装箱

使用AssertJ查看一下

,我会写:

资产(arr).实际包含(1,2,2,2,2,2);
但请注意,它还将检查元素顺序

仅供参考,AssertJ还提供以下“包含”断言:

  • 包含序列
  • 包含顺序
  • 集装箱

使用AssertJ查看一下

,我会写:

资产(arr).实际包含(1,2,2,2,2,2);
但请注意,它还将检查元素顺序

仅供参考,AssertJ还提供以下“包含”断言:

  • 包含序列
  • 包含顺序
  • 集装箱
看一看这本书