Forum Discussion

Wilco_Schreurs's avatar
New Contributor
17 years ago

Saving attachments automatically

I am testing a webservice that returns an attachment (MIME).
Is there a way to automatically save the retrieved attachment, preferably to a filename and folder that I can specify.
I know I can manually save attachments, but I would like to do that automatically, as part of a testsuite>testcase>teststep.
Maybe by using a particular assertion script?

3 Replies

  • omatzura's avatar
    Super Contributor

    sure.. create a groovy script step after your request and use something like the following:

    def testStep = testRunner.testCase.getTestStepByName( "request.." )
    def response = testStep.testRequest.response

    def outFile = new "myfile..")
    def in = response.attachments[0].inputStream outFile,  in )

    Hope I got that right.. :-)


    • nmrao's avatar
      Champion Level 3

      Thank you for the code snippet. Found that few changes needed though :


      1. 'in' is a groovy keyword

      2. both in and out streams to be closed, otherwise content is not save and not allowed to open file.


      Here is the updated script, using it as script assertion:

      def response = messageExchange.response
      assert null != response, "response is null"
      def outFile = new FileOutputStream(new File(System.getProperty('')+'/'))
      def ins = messageExchange.responseAttachments[0].inputStream
      if (ins) { outFile,  ins )


      • bkbn16's avatar

        Hi guys,


        I am complete newbie to this SOAPui. I am trying to get the same response MIME image/jpeg file as attachment. I have attached the jpeg file in the request area. Can you give me a detailed step on how to do this ?