Ruby on rails assert和assert\u select之间的区别
我正在rails Minitest中编写一个测试用例,我有两个场景,第一个是:Ruby on rails assert和assert\u select之间的区别,ruby-on-rails,ruby-on-rails-4,minitest,assertions,Ruby On Rails,Ruby On Rails 4,Minitest,Assertions,我正在rails Minitest中编写一个测试用例,我有两个场景,第一个是: assert_select "button.btn[type=submit]", I18n.t('pay_and_post_job') 但是当我运行这个程序时,我得到了一个错误 应至少找到1个与“button.btn[type=submit]”匹配的元素 0.. 预期0大于等于1 但如果我写的断言与: assert "button.btn[type=submit] #{I18n.t('pay_and_pos
assert_select "button.btn[type=submit]", I18n.t('pay_and_post_job')
但是当我运行这个程序时,我得到了一个错误
应至少找到1个与“button.btn[type=submit]”匹配的元素
0..
预期0大于等于1
但如果我写的断言与:
assert "button.btn[type=submit] #{I18n.t('pay_and_post_job')}"
然后考试通过了
有人能给我解释一下到底发生了什么吗
assert
和assert\u select
来自两个截然不同的工具包。第一个参数非常一般,仅测试其第一个参数是否为真值<代码>断言“按钮”将始终通过,因为“按钮”
是真实的
另一方面,它来自Rails并测试html输出。如果
assert\u select“[type=submit]”
仍然无法解决模板中的某些错误,请尝试减少测试语句,直到它通过为止。我打赌assert\u select“input.btn[type=submit]”
会通过。你是对的,实际上我犯了一个错误,在视图中,这是一个输入字段而不是按钮字段,现在它通过了