我能够使用有效的断言成功运行我的测试用例,但是当通过testrunner运行时,它会从这些错误开始 -
ERROR [TestAssertionRegistry] Missing assertion for type [JsonPath Match]
ERROR [TestAssertionRegistry] Missing assertion for type [JsonPath Match]
ERROR [TestAssertionRegistry] Missing assertion for type [JsonPath Match]
ERROR [TestAssertionRegistry] Missing assertion for type [JsonPath Match]
这些错误来自哪里?我禁用了所有测试步骤但无济于事。它似乎是从项目级别来看xml。我试图弄清楚它是从哪里生成的。
任何帮助都将不胜感激。
答案 0 :(得分:2)
JsonPath Match是SoapUI 5.2.x版中的一项功能。您正尝试在版本4.x中打开项目,并且项目文件不向下兼容。
我遇到了和你一样的问题:如何删除所有问题。以下是我假删除它们的方式:
*-soapui-project.xml
。type="JsonPath Match"
替换为type="XPath Match" disabled="true"
。空格和双引号是相关的!不漂亮,但它有效。此外,如果您想返回,只需撤消替换。
答案 1 :(得分:1)
作为后续行动,如果其他人正在使用api的专业版并且有一个专业客户端,其中项目已经设置,并且仍然出现此错误,您可以执行此操作以使您的断言正常工作通过java api:
//register the json path content assertion before the project loads
TestAssertionRegistry.getInstance().addAssertion(new JsonPathContentAssertion.Factory());
//loads the project, test suites, etc.
WsdlProjectPro project = new WsdlProjectPro(projectPath);
我不确定这是不是一个错误,或者我是否错误地使用了API,但似乎没有将pro断言与自由版断言一起加载到该注册表中。