我有一个C#应用程序,它使用RallyRestAPI版本2.0.1.0来修改测试用例信息。该工具执行的一项任务是更新测试用例的“WorkProduct”。这实质上意味着将用户故事与测试用例相关联。当我在美国的PC上执行代码时,关联成功。当欧洲的同事运行相同的代码时,Rally会返回错误。该错误是“无法解析由于I / O错误导致的输入流为JSON文档:解析错误:预期'”'但看到'0'[chars read =>>> {“testcase”:{“WorkProduct” :{“_ rallyAPIMajor”:“2”,“_ rallyAPIMinor”:“0”,“_ ref”:......“。
我不明白为什么同事会收到错误,但我不知道。该应用程序使用API密钥,因此我知道它不是访问问题。我也知道Rally正在寻找更新的正确测试用例和用户故事,因为在调试期间,无论哪个人尝试更新测试用例,_ref属性都是相同的。最后,我确认同事能够使用该工具更新其他测试用例信息,如“名称”和“注释”。
DynamicJsonObject toUpdate = new DynamicJsonObject();
Request requestWorkProdcut = new Request("HierarchicalRequirement");
requestWorkProdcut.Project = rallyProjectRef;
requestWorkProdcut.ProjectScopeDown = false;
requestWorkProdcut.ProjectScopeUp = false;
requestWorkProdcut.Query = new Query("FormattedID", Query.Operator.Equals, newValue);
QueryResult findWPMatchQueryResult = m.myRestApi.Query(requestWorkProdcut);
toUpdate["WorkProduct"] = findWPMatchQueryResult.Results.First();
OperationResult updateOperationResult = m.myRestApi.Update(currentTestCaseRef, toUpdate);