SOAPUI - 我如何在Schema合规性断言中使用相对路径?

时间:2016-09-14 07:35:12

标签: soapui web-api-testing

我创建了很多Schema遵从性断言,并为所有这些断言设置了一个wadl文件。 我把它放在GIT中,而我的队友也接受了它。

他有问题,因为在他的PC上他有另一条通往存储库目录的路径。

如何设置项目目录的唯一路径?

那是我尝试过没有成功:

  1. 使用路径设置Project属性 wadlSource = 'D:\repo\soapui\API.wadl' 然后设置为Configure Schema Compliance Assertion path = '${#Project#wadlSource}'

  2. 设置为Project参数Resource Root = '${projectDir}' 设置为配置架构合规性断言路径= '\API.wadl'

  3. 设置为配置架构合规性断言路径= '${projectDir}\API.wadl'

  4. 这些变体不起作用,任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

似乎架构合规性断言不支持属性扩展。我在 Project 级别创建了一个wadlSource属性,然后我将 Schema compliance 断言作为路径${#Project#wadlSource},但查看了SOAPUI日志你可以看到:

10:39:13,993 ERROR [SoapUI] An error occurred [com.eviware.soapui.impl.support.definition.support.InvalidDefinitionEx
ception], see error log for details
java.io.FileNotFoundException: C:\Programari\SoapUI-5.0.0\bin\${#Project#wadlSource} (The system cannot find the file specified)
        at java.io.FileInputStream.open(Native Method)
        at java.io.FileInputStream.<init>(Unknown Source)
        at java.io.FileInputStream.<init>(Unknown Source)
        at sun.net.www.protocol.file.FileURLConnection.connect(Unknown Source)
        at sun.net.www.protocol.file.FileURLConnection.getInputStream(Unknown Source)

您可以尝试使用SOAPUI打开功能请求。

无论如何要绕过这个有一些选项,可能的解决方法可以将wadl文件作为来自您自己的WS的静态内容提供(这是最常见的方法)所以)并为此URL配置架构合规性断言。

如果这不是一个选项,你可以放入一些内部 http服务器,例如 apache-httpd ,你和你的队友可以访问配置架构合规性断言此URL。

<强>更新

我也尝试使用 SOAPUI 版本 5.1.2 并发生同样的错误,似乎属性扩展在 Schema compilance中不起作用断言网址也适用于此版本。

答案 1 :(得分:0)

我正在通过使用WireMock提供模式文件来解决此问题,无论如何我们都在使用。您可能还可以在SoapUI本身中创建一个虚拟服务(模拟),然后启动该虚拟服务以提供模式文件。