Я не могу вернуть значение API POST в роботизированной структуре - PullRequest
0 голосов
/ 08 января 2019

Я пытаюсь автоматизировать некоторые API-тесты, я использую роботизированную структуру. Я пытаюсь получить ответ API сообщения, используя ExtendedRequestsLibrary. Я получаю код 500 в ответ, а не 200. Я получаю 200, когда отправляю это с помощью почтальона. Возможно, что-то не так с моим параметром Body. Может кто-нибудь помочь?

Вот мой код:

2.3. ResourceInventoryManagement
    AuthorizationTokenGenerator
    ExtendedRequestsLibrary.Create Session    TestName    ${ResourceInventoryManagementURL}
    &{headers2}=    Create Dictionary    Authorization=Bearer ${AuthToken}    Body={"provideAlternative": true}    Content-Type=application/json    transactionId=5
    ${result}=    ExtendedRequestsLibrary.Post Request    TestName    ${ResourceInventoryManagementSubURL}    headers=${headers2}
    Set Global Variable    ${result}
    Log    ${result}
    Log    ${result.json()}

1 Ответ

0 голосов
/ 08 января 2019

Что это за пара Body={"provideAlternative": true} ключ: значение в словаре ${headers2}?
Библиотека не будет жаловаться и отправлять ее в заголовках запроса (с закодированными символами {}), но это похоже на полезную нагрузку. Полезная нагрузка, которую вы в данный момент не отправляете, что немного необычно для запросов на публикацию в остальных API.

Если эти данные фактически являются полезными данными, передайте их в качестве значения аргумента data ключевого слова:

&{headers2}=    Create Dictionary    Authorization=Bearer 
${AuthToken}    Content-Type=application/json    transactionId=5
${body}=      Create Dictionary    provideAlternative    ${True}
${result}=    ExtendedRequestsLibrary.Post Request    TestName    ${ResourceInventoryManagementSubURL}    headers=${headers2}    data=${body}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...