0

我已经连续大约一周一直在努力解决这个问题,但无法弄清楚为什么会这样。

我正在使用最新的 Selenium 和 TestNG 的 mavenized java 1.8 项目中使用最新的稳定版本的 testrail-api-java (1.0.1)。

我正在尝试使用以下代码使用测试结果更新测试运行:

List<ResultField> customResultField = testRail.resultFields().list().execute();
testRail.results().addForCase(testRun.getId(), testId, new Result().setStatusId(testStatus), customResultField).execute();

更新失败并出现 RuntimeException:

com.fasterxml.jackson.databind.JsonMappingException:无法使用方法 com.codepine.api.testrail.model.Result#getCustomFields(0 params) 获取值():null(通过参考链:com.codepine.api.testrail.model .Result["[anySetter]"])

我调试了代码并注意到此异常发生并在尝试更新运行期间被捕获:

方法抛出“java.lang.NoSuchMethodError”异常。无法评估 com.codepine.api.testrail.model.Result.toString()

这似乎是覆盖基本 java util toString() 方法的问题。

在调试过程中,我检查了明显的事情,如空变量、范围问题等,但无法真正确定发生这种情况的原因。

我的 Java 知识充其量只是新手,因为我是自学成才的,所以如果这很明显而不是这个库的实际问题,我深表歉意。

任何帮助将不胜感激,因为我已经尝试了我能想到的一切。

更新:我更新了我的 pom 以引用版本 1.0.2,以防我弄错了哪个版本是稳定的并且仍然发生异常。

更新:Java 开发人员认为这可能是 Lombok 问题,并建议将 Lombok 添加到我的类路径中,但无论如何仍然会发生异常。

我已联系 Git 社区以获取我正在使用的库,但目前尚未收到回复。链接到项目 Github 页面上的问题发布(重复信息):https ://github.com/codepine/testrail-api-java-client/issues/14

4

1 回答 1

0

https://github.com/codepine/testrail-api-java-client#thin-client-library

getCustomFields(0 参数)

customResultField 没有数据,因此可以检查上面的链接并设置正确的 customResultFields 然后尝试。

于 2017-02-22T21:03:01.087 回答