2016-09-21 3 views
-2

Хотя Мыло (бесплатная версия) имеет возможность экспортировать документ, сгенерированный в ответ. Есть ли какая-нибудь функция groovy для извлечения файла приложения/pdf и сохранения в моей локальной папке?Как экспортировать вложение PDF с мыльного отклика с помощью groovy?

enter image description here

+0

ли судимые вы какое-либо решения? – adalPaRi

+0

@adalPaRi - Я новичок в groovy, но знаю скрипты VB. Я не мог найти функцию, которая будет извлекать pdf-файл, который приходит вместе с мыльным ответом. Тем не менее, я могу сохранить ответ в текстовом файле, используя groovy. – Rish

ответ

0

Следующий скрипт должен быть в состоянии сохранить вложение в файл.

Добавьте приведенный ниже сценарий как Script Assertion к текущему шагу запроса. Найдите соответствующие комментарии в строке.

Источник для сценария взят из here

/** 
* Below script assertion will check 
* if the response is not null 
* there is an attachment 
* and saves file to the specified location, by default saves into system temp 
* directory 
**/ 
//change file name as needed 
def fileName = System.getProperty('java.io.tmpdir')+'/test.pdf' 

//Get the response and check if the response is not null 
def response = messageExchange.response 
assert null != response, "response is null" 

//Create output stream 
def outFile = new FileOutputStream(new File(fileName)) 

//Check if there is one attachment in the response 
assert 1 == messageExchange.responseAttachments.length, "Response attachments count not matching" 
def ins = messageExchange.responseAttachments[0]?.inputStream 
if (ins) { 
    //Save to file 
    com.eviware.soapui.support.Tools.writeAll(outFile, ins) 
} 
ins.close() 
outFile.close() 
+0

Спасибо за обмен скриптом! Я получаю ошибку как «Нет такого свойства: responseAttachment для класса: ..» – Rish

+0

Stacktrace пожалуйста? Сценарий, предоставленный вам, имеет 'messageExchange.responseAttachments', а не' responseAttachment'. Это список вложений, поэтому имеет 's', но то, что вы указываете, является одиночным. Вы использовали это как есть? или изменить? Ответ был протестированным образцом для файла другого типа, поэтому в этом случае не должно быть никаких проблем. – Rao

+0

его работая отлично. – Rish

Смежные вопросы