加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 为什么assert_select不接受参数rails 4.2?

发布时间:2020-12-17 02:56:15 所属栏目:百科 来源:网络整理
导读:我正在进行rails集成测试,有人编写了当时正在通过的测试,但现在他们正在发出警告 这是我正在处理的代码行 assert_select "a[href=/monster_xml_users/#{user_xml.id}][data-method=delete]",I18n.t('revoke_access') 但现在它正在发出警告 Invalid CSS selec
我正在进行rails集成测试,有人编写了当时正在通过的测试,但现在他们正在发出警告

这是我正在处理的代码行

assert_select "a[href=/monster_xml_users/#{user_xml.id}][data-method=delete]",I18n.t('revoke_access')

但现在它正在发出警告

Invalid CSS selector,Assertion not run

但如果我像这样写它

assert_select "a",I18n.t('revoke_access')
        assert_select "a" do
          assert_select "[href=?]","/monster_xml_users/#{user_xml.id}"
          assert_select "[data-method=?]","delete"
        end

然后它没有发出警告,测试通过,这是正确的.
但我无法弄清楚为什么以前的断言现在失败了?
在Rails 4.2中是否已更改assert_select语法?

解决方法

你遵循断言的旧语法.现在rails喜欢在css对象周围添加引号,如下所示

assert_select "a[href='/monster_xml_users/#{user_xml.id}'][data-method='delete']",I18n.t('revoke_access')

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读