我尝试将测试用例作为 json 对象。它将具有测试文件夹信息作为 uri。如何在不再次点击此 uri 的情况下获取该测试文件夹的名称。
当我点击 URI 时,它给了我TFxxx
,这就是我直接需要的..
我试着让 asjsonObj.get("TestFolder.Name").toString();
简单地返回 null。
有什么帮助吗?
我尝试将测试用例作为 json 对象。它将具有测试文件夹信息作为 uri。如何在不再次点击此 uri 的情况下获取该测试文件夹的名称。
当我点击 URI 时,它给了我TFxxx
,这就是我直接需要的..
我试着让 asjsonObj.get("TestFolder.Name").toString();
简单地返回 null。
有什么帮助吗?
在下面的代码中,我查询恰好位于 TestFolder 中的 TestCase,然后像这样遍历文件夹:
testCaseJsonObject.get("TestFolder").getAsJsonObject().get("Name")
这是一个返回 TestFolder 名称的完整示例:
public class GetTestFolder {
public static void main(String[] args) throws Exception {
String host = "https://rally1.rallydev.com";
String applicationName = "Example: get Folder of TestCase";
String projectRef = "/project/12352608219";
String apiKey = "_abc123";
RallyRestApi restApi = null;
try {
restApi = new RallyRestApi(new URI(host),apiKey);
restApi.setApplicationName(applicationName);
QueryRequest testCaseRequest = new QueryRequest("TestCase");
testCaseRequest.setProject(projectRef);
testCaseRequest.setFetch(new Fetch(new String[] {"FormattedID","Name","TestFolder"}));
testCaseRequest.setQueryFilter(new QueryFilter("FormattedID", "=", "TC47"));
testCaseRequest.setScopedDown(false);
testCaseRequest.setScopedUp(false);
QueryResponse testCaseResponse = restApi.query(testCaseRequest);
System.out.println("Successful: " + testCaseResponse.wasSuccessful());
for (int i=0; i<testCaseResponse.getResults().size();i++){
JsonObject testCaseJsonObject = testCaseResponse.getResults().get(i).getAsJsonObject();
System.out.println("Name: " + testCaseJsonObject.get("Name") + " FormattedID: " + testCaseJsonObject.get("FormattedID") + " TestFolder: " + testCaseJsonObject.get("TestFolder").getAsJsonObject().get("Name"));
}
} finally {
if (restApi != null) {
restApi.close();
}
}
}
}