嗨彼得或空手道用户,
刚刚从 1.2 升级到 1.4,我发现 responseBytes 已更改,并且在文档中没有看到任何有关预期更改的信息。
我使用以下格式来测试我的网站是否返回媒体:
Scenario: 00 - TESTER for STACKOVERFLOW getMedia where media type is: Video
# Test steps
Given url 'https://www.afl.com.au/resources/v4.8.10/i/elements/afl-watermark-left.png'
When method get
Then status 200
# Match contentType and contentLength response headers
And match responseHeaders['Content-Type'][0] == 'image/png'
# Observed 22000 as of 05-05-23
And assert responseHeaders['Content-Length'][0] >= '10000'
# Asserting against the content length
And def responseSize = karate.sizeOf(responseBytes)
# Observed 22000 as of 05-05-23
And assert responseSize >= '10000'
responseBytes 内置变量用于返回列表数组,在打印它时可见,但现在返回其他内容。现在,“responseSize”变量包含 -1,如果 reponseBytes 不再是列表,就会发生这种情况。 谢谢你,
我期望
karate.sizeOf(responseBytes)
解析为 int,它显示图像的大小(以字节为单位),然后我可以对此做出断言,如果字节低于我的阈值,它会提醒我。
我尝试过其他功能,例如“响应”,并且正在寻找一种 Js 方法来测量响应的大小。