2014-01-08 64 views
2

JsonObject addProperty无法支持添加另一个JsonObject。如何在发布测试用例结果时添加测试用例

下面显示的官方测试:

@Test 
public void shouldConstructTheCorrectUrlWithExtraParam() { 
    JsonObject body = new JsonObject(); 
    CreateRequest req = new CreateRequest("Defect", body); 
    req.addParam("foo", "Bar"); 
    Assert.assertEquals(req.toUrl(), "/defect/create.js?foo=Bar&fetch=true"); 
} 

我需要的是???:

public void shouldConstructTheCorrectUrlWithExtraParam() { 
    JsonObject body = new JsonObject(); 
    body.add("testcase",???) 
    CreateRequest req = new CreateRequest("testcaseresult", body); 
    req.addParam("foo", "Bar"); 
    Assert.assertEquals(req.toUrl(), "/defect/create.js?foo=Bar&fetch=true"); 
} 

回答

3

我没有添加其他的JSONObject一个错误,这是一个参考,而不是一个实例。

效果很好代码:

public void createTestCaseResult(JsonObject testCaseJsonObject) throws IOException, URISyntaxException { 
     log.println("createTestCaseResult..."); 

     String testCaseRef = testCaseJsonObject.get("_ref").getAsString(); 

     QueryRequest userRequest = new QueryRequest("user"); 
     userRequest.setFetch(new Fetch("UserName", "Subscription", "DisplayName")); 
     userRequest.setQueryFilter(new QueryFilter("UserName", "=", "[email protected]")); 
     QueryResponse userQueryResponse = restApi.query(userRequest); 
     JsonArray userQueryResults = userQueryResponse.getResults(); 
     JsonElement userQueryElement = userQueryResults.get(0); 
     JsonObject userQueryObject = userQueryElement.getAsJsonObject(); 
     String userRef = userQueryObject.get("_ref").getAsString(); 

     close(); 
     getRestApi(); 

     Date now = new Date(); 
     String pattern = "yyyy-MM-dd'T'HH:mm:ssZ"; 
     SimpleDateFormat format = new SimpleDateFormat(pattern); 
     JsonObject newResult = new JsonObject(); 
     newResult.addProperty("Verdict", "Pass"); 
     newResult.addProperty("Build", "2014.01.08.1234567"); 
     newResult.addProperty("Tester", userRef); 
     newResult.addProperty("Date", format.format(now)); 
     newResult.addProperty("CreationDate", format.format(now)); 
     newResult.addProperty("TestCase", testCaseRef); 
     newResult.addProperty("Workspace", workspaceRef); 

     CreateRequest createRequest = new CreateRequest("testcaseresult", newResult); 
     CreateResponse createResponse = restApi.create(createRequest); 

     log.println("createTestCaseResult DONE:"); 
     log.println(String.format("Created %s", createResponse.getObject().get("_ref").getAsString())); 
    } 
相关问题