我是 Rails 和测试驱动开发领域的新手。对于 TDD,我使用的是 RSpec 和 Capybara。目前,我正在编写一个教程以了解有关 Rails 的更多信息,作者正在使用以下语法:
page.should have_title('All users')
expect(page).to have_selector('li', text: user.name)
由于看起来两者都可以互换,我想知道何时使用哪种语法?因为,对于上述情况,我还可以写:
page.should have_title('All users')
page.should have_selector('li', text: user.name)
哪个基本上是一样的,对吧?
另外,我什么时候应该使用“指定”而不是“它”?
it { should have_link('Sign out', href: signout_path) }
specify { expect(user.reload.name).to eq new_name }
在这种情况下,我还可以写:
it { should have_link('Sign out', href: signout_path) }
it { expect(user.reload.name).to eq new_name }
我想使用哪一个的决定取决于我想要表达的内容。也许,你可以在这里帮助我?!
谢谢!