【问题标题】:Deprecation warning for integration test on http header对 http 标头进行集成测试的弃用警告
【发布时间】:2023-04-10 22:20:02
【问题描述】:

我正在使用 MiniTest,并且在集成测试中有一行:

assert_select response.header['Content-Type'], "application/json"

但它会响应:

弃用警告:由于 CSS 选择器无效,断言未运行。
意外的';' '[#Nokogiri::CSS::Node:0x000000064b2e58 @type=:CHILD_SELECTOR, @value=[#Nokogiri::CSS::Node:0x000000064b3268 @type=:ELEMENT_NAME, @value=["application"]>, # Nokogiri::CSS::Node:0x000000064b2ef8 @type=:ELEMENT_NAME, @value=["json"]>]>]'(从类中的块中调用:SessionsTest> at (byebug):1)

有谁了解这是什么原因以及如何(或者)测试标头?

【问题讨论】:

    标签: ruby-on-rails ruby testing integration-testing nokogiri


    【解决方案1】:

    assert_select 用于检查 DOM 对象中的期望,通常是视图结果。

    您可能应该使用assert_equal。另请注意,在assert_equal 中,期望是第一个参数。

    assert_equal "application/json", response.header['Content-Type']
    

    【讨论】:

    • 谢谢,assert_equal "application/json; charset=utf-8", response.header['Content-Type'] 工作。
    猜你喜欢
    • 2017-03-06
    • 2017-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多