如何绕过SoapUI降低所有网址?

时间:2016-09-23 08:08:36

标签: soapui case-sensitive

我们有一个类似https://domain.example/rsvs_TargetService/Action的网址作为端点网址,当用作SoapUI端点时,它会小写为https://domain.example/rsvs_targetservice/action,但这不起作用。

有没有办法解决这个问题?

注意:由于SoapUI是程序员常用的工具,我认为这应该在范围内。

2 个答案:

答案 0 :(得分:0)

TLDR;现在已经在SoapUI 5.3版本中修复了这个问题。

这是known bug from around version 4.6 onwards

我找到的解决方法是在请求测试步骤之前进行一个常规测试步骤,包含类似

的值
context['path'] = 'rsvs_TargetService/Action'

在HTTP请求步骤中引用它,如

https://domain.example/${path} 

然后,当你运行整个测试用例时,变量扩展将发挥其魔力。

SoapUI源代码在github中,有a pull request merged fixing this。拉取请求于2016年8月16日合并,并且released as part of 5.3 release已公开,因此当前版本不应再出现此问题。

答案 1 :(得分:0)

不是使用上下文,而是运行其他groovy脚本,而是定义自定义测试用例/套件/项目级属性。

例如:定义项目级别属性,说URL_PATH_TS_ACTION,其值为rsvs_TargetService/Action

然后将endpoint设置为使用Property Expansion。即,
 https://domain.example/${#Project#URL_PATH_TS_ACTION}

这样就可以避免不必要的groovy脚本。

当然,您可以使用上述方法完全外部化端点。这样做(也在屏幕截图中显示)

  • 双击服务界面
  • 转到服务端点
  • 点击+
  • 添加端点,如图所示,带有属性扩展
  • 选择其中一个端点
  • 点击分配&选择所有请求和测试请求

您可以轻松切换端点以进行所有测试。 enter image description here