Ruby on Rails中的完整堆栈测试选项

Dan*_*ley 6 testing selenium unit-testing ruby-on-rails cucumber

Rails应用程序的全栈测试有很多选择.有些使用真正的浏览器,有些是无头的,有些根本不运行javascript.

您使用或推荐哪些工具?为什么?

浏览器模拟器或自动机列表:

  • Rails内置支持集成和功能测试(没有JS)
  • Webrat
  • Webrat ::硒
  • Celerity(通过Culerity)
  • 的Watir
  • ...

测试DSL和框架的列表:

  • Rails默认值(断言,......)
  • 早该
  • 黄瓜
  • Capybara(用于多个浏览器模拟器的统一DSL)
  • ...

Tob*_*ede 1

在过去的几年里,我在 Rails 职业生涯中使用了很多东西。

目前正在 JRuby 上开发一个相当大的 Rails 应用程序,具有非常可靠的测试覆盖率,我们的堆栈如下所示。

单元测试:

  • RSpec 涵盖模型、助手、库和控制器。控制器覆盖率往往非常高
  • JSpec 覆盖了一个使用一些非常前沿的 JS 和 HTML 5 魔法的项目

功能测试:

  • 使用 Capybara 和 Culerity 的 Cucumber(我们刚刚从 WebRat 进行转换,以便从 Cucumber 覆盖大量 JS 前端)
  • 硒现已成为“遗产”并慢慢迁移到黄瓜/水豚