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

如何在SoapUI中添加groovy脚本以自动更新定义?

华衡
2023-03-14

我使用Soap用户界面来测试我的网络服务。每次我想执行我的测试请求时,我都需要更新定义。我知道有可能添加Groovy脚本来让WSDL自动更新。但是我不知道我应该添加这个脚本来使它工作。有人能描述一下我每次执行请求时需要做的使这个脚本运行的步骤吗?

共有2个答案

常甫
2023-03-14

以下是代码:

import static com.eviware.soapui.impl.wsdl.actions.iface.UpdateInterfaceAction.recreateRequests
import static com.eviware.soapui.impl.wsdl.actions.iface.UpdateInterfaceAction.recreateTestRequests

project = testRunner.testCase.testSuite.project; //get the project reference
def ifaceList = project.getInterfaceList(); //get all the interfaces present in the project in a list

//start a loop for number of interfaces
for(int i = 0; i < project.getInterfaceCount() ; i++)
{

def iface = project.getInterfaceAt(i);
def url = iface.definition;
iface.updateDefinition( url, true); //updateDefinition(String url , Boolean createRequests)

//The above part updates the definition
//The part below recreates the requests based on updated wsdl definition

//syntax - 
//recreateRequests( WsdlInterface iface, boolean buildOptional, boolean createBackups, boolean keepExisting, boolean keepHeaders )

recreateRequests(iface,true,true,true,true);
recreateTestRequests(iface,true,true,true,true);
}
//End of Script//
鄢英哲
2023-03-14

如果你通过在导航器选项卡上双击它来打开你的testSuite,你可以在窗口底部看到一个安装脚本按钮,如果你点击安装脚本按钮,一个窗口,你可以在上面添加groovy脚本,这个脚本在每次你执行testSuite时首先执行:

这也可以用测试案例。除了此脚本可以是Groovy或javascript之外,您还可以设置要设置项目的脚本语言属性的语言:

 类似资料:
  • 我在SoapUI中有一个肥皂测试项目。我已经将所有请求作为测试步骤添加到测试套件中。 每次开始测试时,我需要更新WSDL定义并重新创建请求(同时保留现有值)。 我需要一个groovy脚本的帮助来自动完成这个过程,这个脚本可以放在项目内部,每次在执行开始之前运行。

  • 我想在groovy脚本中定义一个类,我可以通过SoapUI中的其他groovy脚本重用该类。 我一直试图在TestSuite属性中定义我的类,但没有成功。我希望避免在JAR中定义类,因为我们在团队中工作,每个人都必须在他们的SoapUI中导入JAR才能运行我的测试。我使用SoapUI 3.6.1 以下是我的TestSuite的制作方式: 为了简化me测试,我在“Test1”中定义了一个类,我想在“

  • 当我尝试在soapUI测试步骤中解析响应时,收到了以下异常。也尝试了getXMLHolder方法。还是没运气。 答复如下

  • 我在从groovy脚本(groovy脚本是SoapUI测试套件的一部分)运行java代码时遇到了问题,我创建了简单的脚本: TopClass的代码: 我将myjar.jar放入soapui-pro-2.5\lib和soapui-pro-2.5\bin\ext文件夹中。但行书我得到: org.codehaus.groovy.control.multipleCompilationerrorsExcep