我想测试find rest服务,如果我发现我想从数据库中删除,请不要执行任何操作
我这样使用它(其中rs是find的响应)
JsonPath jsonPath = rs.getBody().jsonPath();
Object foundName= jsonPath.get("name");
if (foundName!= null) {
expect().statusCode(200).when().delete("..." + foundName);
}
所以当什么都没找到时,如何检查它的foundName,因为我尝试了foundName!= null或foundName!=“”,但仍然无法正常工作。因此,请解释一个空的响应主体的结构是什么
基于调试信息,发现名称为List类型,因此解决方案是将FoundName强制转换为List并检查其是否为空。
List foundName = (List)jsonPath.get("name");
foundName.isEmpty()
您可以调用jsonPath.getString("name")
,它将您的(空)响应正文转换为String,并且可以使用equals("")
进行检查(请参阅RESTassured JavaDoc)。我以为“名称”是字符串类型。
rs.body(blankOrNullString());
为我工作以确认响应正文为空或空白。