将Soap Request的附件复制到TestStep请求中

时间:2016-12-08 12:11:29

标签: groovy soapui

我正在将项目的Soap Request复制到带有加载脚本(项目级别)的testCase中,除非我发现所有附件文件都没有被复制,否则一切顺利。

这是我的剧本:

testsuite=project.addNewTestSuite("Suite")
testcase=testsuite.addNewTestCase("Case")

def iface= project.interfaces["Interface"]
def op = iface.operations["Operation"]

op.getRequestList().each { req ->

   def config=com.eviware.soapui.impl.wsdl.teststeps.registry.WsdlTestRequestStepFactory.createConfig(req,  req.getName())
   def newTestStep = testcase.addTestStep( config ); 
}

有没有办法将每个请求的附件复制到它的testStep副本中?

如果我需要手动添加我的测试套件,并使用安装脚本(使用上下文,跑步者......)我已经准备好了。

由于

1 个答案:

答案 0 :(得分:0)

您必须在操作列表中获取请求中的所有附件,并在新的TestStep中导入每个附件,这样的内容必须适合您的情况:

req.attachments.each{ attach ->
    newTestStep.testRequest.importAttachment(attach)
}

代码中的所有内容:

def project = testRunner.testCase.testSuite.project
def testsuite= project.addNewTestSuite("Suite")
def testcase= testsuite.addNewTestCase("Case")

def iface= project.interfaces["Interface"]
def op = iface.operations["Operation"]

op.getRequestList().each { req ->
  def config=com.eviware.soapui.impl.wsdl.teststeps.registry.WsdlTestRequestStepFactory.createConfig(req,  req.getName())
  def newTestStep = testcase.addTestStep( config )

  req.attachments.each{ attach ->
    newTestStep.testRequest.importAttachment(attach)
  }
}