当前位置: 首页 > 知识库问答 >
问题:

SOAPUI-为TestCase/TestSuite配置endpoint和资源

孙项禹
2023-03-14

有没有办法在SOAPUI(免费)中配置一个测试用例、测试套件甚至项目级的测试中请求使用的资源/方法?

我们有以下用例:
相同的REST服务在不同的服务器上运行(可能是不同的版本),并且根据配置略有不同的资源路径。
例如超文本传输协议://server1/myRest超文本传输协议://server2/theRest等。

我们希望能够针对这些不同的endpoint/资源组合运行我们的测试套件和测试用例。到目前为止,我们发现更改endpoint的唯一方法是在测试用例级别使用测试用例编辑器,并在测试步骤级别更改资源/方法。

显然,为每个endpoint/资源路径组合复制所有的测试用例/测试套件,或者为其创建项目,都不是一个选项。

有没有一种简单的方法可以使用SOAPUI(免费)实现这一点?

共有2个答案

师俊健
2023-03-14
  1. 双击导航器中项目下方左侧的endpoint URL
  2. 转到服务终结点
  3. 点击添加或符号
  4. 输入终点
  5. 点击分配-

先决条件:清空需要应用此更改的url。

章永安
2023-03-14

我们能够找到解决问题的方法,关键是使用项目级别的属性。

基本上,有两种方法可以做到这一点。

  1. 打开项目的项目视图,并添加名为 ServiceEndpoint 的属性(或要使用的任何其他名称)。值是主机名,例如 server1:8090
  2. 打开服务的服务查看器。在“服务终结点”选项卡上,添加终结点 http://${#项目#服务终结点}
  3. 仍在服务查看器中,单击“分配”按钮,选择要向其分配终结点的请求(所有请求、测试请求,两者都...

现在,只需在要使用其他终结点时修改项目级别属性

  1. 使用服务查看器添加需要使用的endpoint(请参见上面的第2点)
  2. 指定要使用的endpoint(请参见上面的第3点)
  1. 使用项目视图定义属性ResourcePath
  2. 添加新资源,将/{ServicePath}定义为资源路径
  3. 在资源查看器中打开资源。您将看到添加了一个名为ServicePath、stlye TEMPLATE的参数。为其赋值${#Project#ResourcePath}
  4. 在测试套件/测试用例中使用此资源

现在,您只需修改项目级别属性即可更改资源路径。

您还可以定义多个路径组件,例如 /{serviceName}/{methodName} 或类似的东西。当然,您需要 2 个变量。

注意:如果您的路径属性的值包含/,您将需要在首选项中编辑SOAP UI HTTP设置并选中Pre-EncodedEndpoint复选框,否则它将不起作用,因为/将是URL编码的

 类似资料:
  • 我正在尝试在jython中使用SoapUIAPI(为Robot Framework修改SoapUILibrary),但不知为何,我无法找到任何方法来设置property TestStep的属性。 设置项目、全局和系统属性很容易使用 SoapUITestCaseRunner.setProjectProperties() SoapUITestCaseRunner类不包含任何访问testSteps的方法

  • 我正在努力定义REST API: 我正在为事务系统建模一个Api:目前我已经为事务资源定义了一些endpoint。我的终结点是: 我想添加一个新的endpoint,用于在某个日期之前将之前的10个事务获取到某个事务。 我已将终结点定义为: 之前,我希望它这样定义: 但是,每当GET on/transactions完成时,我都必须查找查询参数,看看是否设置了这些参数(可能应该这样做)。 哪一个在语义

  • 我能够在我的测试套件 (TS1) 中运行一个测试用例拆解脚本,该脚本使用以下时髦脚本从另一个测试套件 (TS2) 运行测试步骤: 但是由于这个测试步骤应该为TS1中的所有测试用例运行,我需要为每个测试用例添加拆卸脚本,这有点麻烦。 我想知道我是否可以直接从testsuite teardown脚本中实现同样的事情,这将为我节省大量的脚本维护。 不幸的是,testrunner对象在testsuite级

  • 当我通过命令提示符从本地设置运行构建时,我给出命令“mvn eviware:maven-soapui-plugin:test”,它执行位于/src/test/SoapUI文件夹中的SoapUI TestSuite。关于詹金斯..我不知道詹金斯必须在哪里输入这个命令才能执行它。

  • web服务提供者共享了soap消息的原始xml以突出显示ws-security头。使用soapUI,我已经能够创建完全相同的wsse-Security头,如下所示: 在soapUI中,在“WS-Security Configurations”下,我添加了密钥库(带有我的私有证书的jks)和信任库(带有CA根公钥的jks)。最后,我添加了带有以下设置的“传出WS-Security配置”。 使用此WS

  • 我使用SoapUI做了一个简单的测试: 调用REST服务(POST),它会返回类似“key:value”的信息 使用元素之一=步骤1中的值调用web服务(SOAP) 我刚刚搜索了SmartBear论坛和SoapUI文档,但没有找到如何提取响应,就像如果是XML,它将类似于${ myFirstStep # Response/root element/element}。但是REST响应不是XML(那么