如何检索服务的端点

时间:2017-01-27 13:39:50

标签: groovy soapui

我想在项目拆卸脚本中添加项目的端点。在运行项目之前,用户将通过所有请求和测试请求分配其端点,以获取所有请求和测试请求的端点的语法是什么?

我看到了使用测试步骤的示例,但我不想通过测试步骤路径检索它:

testRunner.testCase.getTestStepByName("dd").getHttpRequest().getEndpoint();

拆卸脚本使用log,context,runner nd项目变量。

由于

1 个答案:

答案 0 :(得分:6)

根据问题中更新的信息,您似乎必须访问项目TearDown Script中的端点。

您还需要针对端点的不同base url执行相同的测试集。甚至不确定您是否需要相应地使用凭证。

考虑到上述情况,项目级属性很容易。

在这里你会去:

  • 基本网址创建项目级自定义属性,将BASE_URL称为属性名称,将值设置为http://10.0.0.1:8008。当然,根据需要对要执行的测试进行实际值更改。
  • 同样为创建另一个项目级属性,例如DOMAIN_NAME,并根据测试提供其值。
  • 双击服务/界面,点击Service Endpoints标签。
  • 删除所有现有值。
  • 点击+图标
  • 添加新的终结点
  • ${#Project#BASE_URL}添加为端点,将${#Project#DOMAIN_NAME}添加为域值
  • 如果需要,您可以使用相同的方法获取凭据。
  • 现在点击Assign按钮,然后从下拉列表中选择All requests and Tests选项。
  • 同样,如果您有多个服务/接口,请执行相同操作。

如何在TearDown Script

中访问上述值
log.info "Endpoint : ${project.getPropertyValue('BASE_URL')}"
log.info "Domain : ${project.getPropertyValue('DOMAIN_NAME')}"

如果要更改domainbase url,只需在针对不同服务器/环境执行测试之前更改相应项目属性的值。

修改

endpointdomain的值可以在执行测试时使用SOAPUI_HOME/bin/testrunner实用程序从命令行动态传递(甚至不更改项目中保存的值)。有关详细信息,请参阅documentation