Извлеките значение из XML-ответа и установите его как глобальную переменную в Postman

Я пытаюсь извлечь значение из успешного запроса API, который отправляет ответ XML, используя Postman. Вот как я пытался поймать значение, которое мне нужно из ответа.

var jsonObject = xml2Json(responseBody);
console.log(jsonObject);

postman.setGlobalVariable("Active_SAML", jsonObject.bankidCollectResponse.SAMLReferens); 
console.log(pm.globals.get("Active_SAML"));

Этот сценарий, написанный на вкладке "Тесты" и вывод из консоли, приведен ниже.

Но когда я запускаю программу, я получаю следующую ошибку.

Произошла ошибка при оценке тестового сценария: TypeError: Невозможно прочитать свойство 'SAMLReferens' из неопределенного

Я не уверен, где я делаю это неправильно. Кто-нибудь, пожалуйста, укажите мне это?

1 ответ

Решение

Благодаря комментарию @ChathurangaChandrasekara я смог выяснить формат, который они ожидали.

// Convert XML output to JSON format
var jsonObject = xml2Json(responseBody);

// Since the converted JSON format is having Envelope and Body tags we need following format
var activeSamlVal = jsonObject['SOAP-ENV:Envelope']['SOAP-ENV:Body'].bankidCollectResponse.SAMLReferens;
console.log(activeSamlVal)

// Assigning the extracted value in to a global variable
pm.globals.set("SAML_key", activeSamlVal);
console.log(pm.globals.get("SAML_key"));
Другие вопросы по тегам