Я использую Katalon Studio для написания тестового скрипта цепочки API. Я отправляю запрос и сохраняю значение из возвращенного jsonResponse. По какой-то причине, когда я сохраняю значение transactionId
из jsonResponse и передаю его в следующий URL-адрес запроса API, он добавляет -
(символ минус). Я не могу понять, почему он это делает, и я проверил каждую строку кода, чтобы убедиться, что я не добавляю его случайно.
Файл ключевых слов:
@Keyword
def int transferAcct(int customerId, int amount, int externalId, int accountId, String tag) {
def response = WS.sendRequestAndVerify(findTestObject("Postman/SampleWorkflow/transferNewAcct",
['customerId' : customerId, ('fromId') : externalId, 'toId' : accountId]))
def jsonResponse = jsonSlurper.parseText(response.getResponseText())
return jsonResponse.data[0].transactionId
println("returned = " + jsonResponse.data[0].transactionId)
}
@Keyword
def getTransaction(int customerId, int transactionId) {
def response = WS.sendRequestAndVerify(findTestObject("Postman/SampleWorkflow/getTransaction",
['customerId' : customerId, 'transactionId' : transactionId]))
def jsonResponse = jsonSlurper.parseText(response.getResponseText())
return jsonResponse.data[0].typeCode
}
Пример ответа полезной нагрузки от transferAcct()
:
{
"data": [
{
"customerId": 100001,
"tag": "",
"transactionId": 2147529999
}
],
"errors": [],
"status": 200
}
Я сохраняю transactionId
как переменную, а затем передаю его в getTransaction()
URL-адрес запроса.
Но в URL-адрес запроса добавлен -
к началу transactionId
. Пример: https://fakeUrl.com/transaction/get/100001/-2147449999
Единственное, что я могу придумать, может вызвать проблему, это то, что это единственный запрос в моем наборе тестов, который немедленно возвращает значения внутри массива return jsonResponse.data[0].transactionId
- все других моих запросов возвращает словарь значений (пример: return jsonResponse.data.customerId
)