Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ArrayList<;布尔值>;没有hamcrest的断言Java_Java_Testing_Automated Tests_Assertions_Rest Assured - Fatal编程技术网

ArrayList<;布尔值>;没有hamcrest的断言Java

ArrayList<;布尔值>;没有hamcrest的断言Java,java,testing,automated-tests,assertions,rest-assured,Java,Testing,Automated Tests,Assertions,Rest Assured,此测试将API中的所有状态作为布尔值True或False提供: List<Boolean> allStatus = event.getResponse().getBody().jsonPath().getList("enabled"); 我想知道有什么更好的方法来处理这种情况 您可以使用Java 8引入的流: List<Boolean> allStatus = new ArrayList<>(); allStatus.stream().forEach((st

此测试将API中的所有状态作为布尔值True或False提供:

List<Boolean> allStatus = event.getResponse().getBody().jsonPath().getList("enabled");

我想知道有什么更好的方法来处理这种情况

您可以使用Java 8引入的

List<Boolean> allStatus = new ArrayList<>();
allStatus.stream().forEach((status) -> { assert status; });
List allStatus=new ArrayList();
allStatus.stream().forEach((status)->{assert status;});

这与您提供的代码基本相同,但采用了更新的技术。您无法使它更快,因为您必须检查每个条目。

您可以使用Java Streams的


也许你只做一个断言

boolean tmp = true;
for (Boolean status : allStatus) tmp = tmp&&status;
assert tmp;

我们还可以使用以下断言:

List<Boolean> allStatus = event.getResponse().getBody().jsonPath().getList("enabled");
assertNotNull(allStatus);
    assertEquals("FAILED Disable event status ", false, allStatus.contains(Boolean.valueOf(true)));
List allStatus=event.getResponse().getBody().jsonPath().getList(“已启用”);
assertNotNull(所有状态);
assertEquals(“禁用事件状态失败”,false,allStatus.contains(Boolean.valueOf(true));

你说的更好是什么意思?你在找短一点的吗?它不能再快了。你想在第一次失败后停止吗?可能是@JonahGraham的重复,这是另一个库。@4卡斯特:是的,但它确实回答了一个问题,即使用更好的库。实际上,你可能想恢复到
b->!b
因为for
等于
也会取消装箱。很抱歉,我想这将只检查一次状态是否存在。在allStatus中,它将是不同事件的所有状态
boolean tmp = true;
for (Boolean status : allStatus) tmp = tmp&&status;
assert tmp;
List<Boolean> allStatus = event.getResponse().getBody().jsonPath().getList("enabled");
assertNotNull(allStatus);
    assertEquals("FAILED Disable event status ", false, allStatus.contains(Boolean.valueOf(true)));