【问题标题】:Cant print Headers in karate feature file无法在空手道功能文件中打印标题
【发布时间】:2018-07-31 02:33:01
【问题描述】:

我正在使用空手道 (https://github.com/intuit/karate) 进行一些 API 测试,并且进行了包含无效标头的测试。我想在调试时打印标题,以确保一切都设置正确。这就是我设置和尝试打印的方式,但没有任何效果。我可以在文档中找到任何内容。有人知道吗?非常感谢!

Given path '/metadata/project/' + projectID + '/graph/' + graphID
And headers { Authorization: 'INVALID', Content-Type:#(headerValue)}
And request graphJSON
* print headers // prints nothing
* print requestHeaders  // prints nothing
* print requestHeader   // prints nothing
* print header // prints nothing
When method put
Then status 401 // this passes, so i know the header is being set
* print response // prints correctly
* print responseHeaders //prints correctly

如何打印要发送的标头?

【问题讨论】:

    标签: karate


    【解决方案1】:

    我很惊讶您在控制台和日志中看不到标头 target/karate.log - 默认情况下应该会发生这种情况,您可以按照此处的说明进行操作:https://github.com/intuit/karate#logging

    另请参阅内置变量的文档,而不是试图猜测它们:https://github.com/intuit/karate#responseheaders

    但如果您真的想打印发送的实际标头(很少需要),您可以这样做:

    * print 'headers:', karate.prevRequest.headers
    

    这里有解释:https://github.com/intuit/karate#karate-prevrequest

    编辑:我注意到您可能犯了一个常见错误,当您在 JSON 键中有连字符时 - 您需要使用字符串引号:

    And headers { Authorization: 'INVALID', 'Content-Type': '#(headerValue)' }
    

    是的,文档中也对此进行了解释。

    【讨论】:

    • 我希望信息出现在 github.com/intuit/karate#headers 部分
    • 此外,内容类型似乎仍然有效,但我会检查相关文档,并可能根据您的建议进行更改。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多