Testing SoapUI Testrunner提供有关TestAssertionRegistry的错误

Testing SoapUI Testrunner提供有关TestAssertionRegistry的错误,testing,soapui,functional-testing,Testing,Soapui,Functional Testing,我能够使用有效的断言成功地运行我的测试用例,但是当通过testrunner运行时,它首先会出现以下错误- ERROR [TestAssertionRegistry] Missing assertion for type [JsonPath Match] ERROR [TestAssertionRegistry] Missing assertion for type [JsonPath Match] ERROR [TestAssertionRegistry] Missing assertion f

我能够使用有效的断言成功地运行我的测试用例,但是当通过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的。我想弄清楚它是从哪里产生的


任何帮助都将不胜感激。

JsonPath匹配是5.2.x版SoapUI中的一项功能。您正试图在版本4.x中打开项目,但项目文件不向下兼容

我和你面临着同样的问题:如何将它们全部移除。下面是我如何删除它们的:

  • 在文本编辑器中打开
    *-soapui project.xml
  • 将所有出现的
    type=“JsonPath Match”
    替换为
    type=“XPath Match”disabled=“true”
    。空格和双引号是相关的
    虽然不漂亮,但很管用。另外,如果您想返回,只需反转替换。

    作为后续操作,如果其他人正在使用api的pro版本,并且有一个pro客户端在其中设置项目,并且仍然收到此错误,您可以通过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);
    

    我不确定这是否是一个bug,或者我是否错误地使用了API,但似乎pro断言与免费版本断言一起加载到该注册表中。

    是否安装了多个版本的SoapUI?这听起来像是您的项目是在5.x中创建的,您使用的是4.x系列中的testrunner。事实上,这正是发生的事情。我从专业版导出并将其移动到免费版。最后我重新做了测试来解决这个问题。如果你想把它作为一个答案,我可以把它标记为已回答。它实际上是免费的5.x版本,没有JsonPath特性。话虽如此,我试图将其从所有测试中删除,但无法完成。最后,我只是在免费软件中重写了测试version@letstestthis有人否决了我,所以我注意到了这个答案。我更正了我的答案:JsonPath从5开始可用。2.x,即使在免费版本中也是如此。