在我的控制器测试中,我有这样的断言
assert_select "input#name"
这适用于普通的HTML请求,但它不适用于JQuery。我提出的最好的是
assert response.body.match /<input .*id=\\\"name\\\".*\/>/
有更好的方法吗?
答案 0 :(得分:3)
您可以使用assert_select_jquery
对JQuery响应执行assert_select
,如下所示:
assert_select_jquery :html, '#content_id .content_class' do
assert_select "input#name"
end
外部匹配器需要完全匹配JQuery,因此上面的匹配
$('#content_id .content_class').html(' ... ')
但仅使用#content_id
不会。