Каратэ - как отправить тело в виде данных формы - PullRequest
1 голос
/ 19 сентября 2019

Это мои поля в данных формы

uploaded_by = x@y.com
status = true
file = Excel File to be uploaded

Вот код, который я пробовал

    Given url baseUrl + uploadTemplate
    And multipart field uploaded_by = <user>
    And multipart field status = <status>
    And multipart field file = read('Template.xlsx')
    When method post
    Then status 200
    And match $.result == <result>

Examples: 
| user      | status | result  |
| 'x@y.com' | true   | INITIAL |

Файл Excel находится в том же месте, где находится файл объектов, яя получаю 500 ошибок, но работает хорошо от POSTMAN

Ответы [ 2 ]

1 голос
/ 19 сентября 2019

Используйте form field вместо multipart field: https://github.com/intuit/karate#form-field

0 голосов
/ 20 сентября 2019

Работает со следующим кодом

    Given url baseUrl + uploadTemplate
    And multipart field uploaded_by = <user>
    And multipart field status = <status>
    And multipart field file = { read: 'Template.xlsx', filename: 'Template.xlsx', contentType: 'multipart/form-data' }
    When method post
    Then status 200
    And match $.result == <result>
...