1

我是 Sinatra 和 Backbone 的新手。我已经使用 Rspec 和 Cucumber 对 Rails 进行了测试。我想知道测试在 Sinatra 和 Backbone.js 中构建的应用程序的最聪明的方法。

我正在考虑使用 Rspec 测试 Sinatra 中的一些逻辑,然后使用 Jasmine 测试 Backbone 部分。然后我也打算用 Cucumber 做集成测试。

这是矫枉过正吗?一个可以取消另一个并使其无用吗?Jasmine 可以完全取代 Rspec 吗?

我还应该提到,Sinatra 应用程序与一个由单独的 Rails 应用程序公开的 API 进行通信。也许还有一种聪明的方法来模拟/建模数据以运行测试。

谢谢!

4

1 回答 1

0

我处于类似的位置,因为我主要使用 Sinatra 编写数据 API,现在使用 Backbone(或其他)编写 Web 应用程序。由于您有数据 API,我将使用 RSpec 和 Rack Test 测试 API,这可能是您一天中更好的部分。这周剩下的时间你可以使用任何 javascript 测试框架(Jasmine、Sinon 等)来测试 Backbone 部分,并希望尽快恢复使用 Ruby!;) 是否模拟对数据 API 的调用或只是针对它运行它们取决于您,我认为做出该选择的主要因素是速度。

我认为同时使用两者并不过分,因为您有一个单独的 API,它应该有自己的规范,因为其他客户端也可能开始连接到它。指定 HTTP 调用也比 Backbone 应用程序正在执行的任何其他操作 + HTTP 调用要容易得多。

我个人不使用 Cucumber,如果您有其他规格,但 YMMV 似乎是多余的。

于 2013-10-19T02:44:25.390 回答