2014-04-02 23 views
3

我想测试找到安息服务,如果我未便我想从数据库中删除,否则什么都不做放心空响应车身结构

我这样使用它(其中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!=“”,和它仍然不工作。 所以,请解释一下什么是空白的回应

+0

在java中,你不能用'!='来比较字符串。使用String.equals(“”)'方法 –

+0

是的,我也试过,foundname.equals(“”)是false – April

+0

尝试使用调试器来查找'foundName'的值 –

回答

0

你可以称之为jsonPath.getString("name")它蒙上你的(空)响应主体为String,你可以用equals("")检查(见RESTassured JavaDoc)的结构。我认为“名称”是String类型。

+0

我也试过它,但jsonPath.getString()basicaly在内部使用相同的jsonPath.get(),所以它是我试过的同样的东西get() – April

+0

我明白了。那么返回的字符串包含什么? – lightwalker

3

基于调试信息foundName的类型为List,所以解决方案是将foundName转换为List并检查它是否为空。

List foundName = (List)jsonPath.get("name"); 
foundName.isEmpty()