JUnit 5中是否有任何机制可以运行测试中的所有assert,即使中间的assert失败?例如:
@Test
public void unitForTest_SomeScenario_ShouldReturn() {
//Arrange
var myObj = myServ.getMyObj();
//Act & Assert
assertThat(myObj).isNotNull();
assertThat(myObj.getName()).isEqualTo("Steve"); //failed assert
assertThat(myObj.getLastName()).isEqualTo("Gates");
}
我的意图是运行所有Assert并跟踪那些失败的只是第二个,而不是第三个和第一个。
1条答案
按热度按时间zed5wv101#
您可以使用JUnit5的assertAll。
例如:
将失败,并显示以下详细响应:
注意:因为你的问题上的一些评论暗示,这 * 可能 * 通过使用单独的测试(而不是一个带有多个Assert的测试)来表达更好,但是,只要多个Assert是单个“概念Assert”的一部分,那么我就可以肯定地看到使用
assertAll
的情况。