使用 RSpec 和 Capybara 测试 Rails 应用

Testing Rails app with RSpec and Capybara

在测试我的 rails 应用程序(使用 RSpec 和 Capybara)时,我在测试 AngularJS 功能时遇到了麻烦(从用户的角度来看)。我不能只用 RSpec 和 Capybara 测试吗?还是我还需要量角器之类的东西?

任何帮助都会很棒!谢谢!

您可以使用 Capybara 进行测试,只要您使用支持 javascript 的驱动程序,例如 Selenium 或 Poltergeist - 请参阅 https://github.com/jnicklas/capybara#drivers

然而,虽然我不是 AngularJS 用户,但我知道它是为可测试而设计的,我想你最好使用专门针对 javascript 的工具测试,而不是水豚。

只要 angular 提供了它自己的方法和功能,您就应该将测试套件分成两部分。第一个 rspec、capybara 和 rails 将仅测试非 angular 页面。

第二个,使用像 jasmine 这样的工具应该测试 angular 行为。两者相结合,可以很好地覆盖应用程序。

https://docs.angularjs.org/guide/unit-testing