一个简单的测试,发布'.yaml‘的服务,托管在我的本地机器。
特点:测试
Background:
* url 'http://localhost:0000/upload' ..........(anonymized)
Scenario: Test
Given path 'contract'
And multipart entity read('test.yaml') ..........(anonymized)
And multipart field digest = '123123dedwd2rd2d23e2d23e2d3' .........(anonymized)
And header Content-Type = 'multipart/related'
When method post
Then status 200响应为{"message":"Error while uploading file","error":["local variable 'upload_file_path' referenced before assignment"],"success":false}
需要帮助才能理解,这里引用了什么局部变量upload_file_path ..。
发布于 2020-02-26 12:53:56
默认情况下,空手道自动将*.yaml文件转换为JSON,因为这是最常见的用例,但您正在尝试进行文件上传。你有两个选择。
( a)将文件重命名为其他东西,例如*.txt
( b)使用karate.readAsString() API
And multipart entity karate.readAsString('test.yaml') 编辑:根据评论
要传递自定义Content-Type,可以执行两个步骤:
* def temp = karate.readAsString('test.yaml')
* multipart file file = { value : '#(temp)', filename: 'myname.yml', contentType: 'application/yaml' }https://stackoverflow.com/questions/60408353
复制相似问题