1

シナトラとバックボーンは初めてです。Rspec と Cucumber を使用して Rails のテストを行いました。Sinatra と Backbone.js で構築されたアプリケーションをテストするための最もスマートな方法を考えています。

Rspec を使用して Sinatra のロジックの一部をテストし、Jasmine を使用してバックボーン部分をテストすることを考えていました。次に、Cucumber を使用して統合テストも行う予定でした。

これはやり過ぎですか?一方が他方を打ち消し、役に立たないようにすることはできますか? Jasmine は Rspec を完全に置き換えることができますか?

また、Sinatra アプリは、別の Rails アプリによって公開された API と通信することにも言及する必要があります。おそらく、そのデータをモック/モデル化してテストを実行するスマートな方法もあります。

ありがとう!

4

1 に答える 1

0

私は主に Sinatra を使用してデータ API を作成し、現在は Backbone (またはその他のもの) を使用して Web アプリを作成しているという点で、同様の立場にあります。あなたはデータ API を持っているので、RSpec と Rack Test を使用して API をテストします。残りの週は、JavaScript テスト フレームワーク (Jasmine、Sinon など) のいずれかを使用してバックボーン部分をテストし、できるだけ早く Ruby の使用に戻ることを望んでいます! ;) データ API への呼び出しをモックするか、それに対して実行するかはあなた次第です。その選択を行う主な要因は速度だと思います。

別の API があり、他のクライアントもそれに接続し始める可能性があるため、独自の仕様を持つ必要があるため、両方を使用するのはやり過ぎではないと思います。また、HTTP 呼び出しを指定する方が、バックボーン アプリが行っている他の処理 + HTTP 呼び出しよりもはるかに簡単です。

個人的にCucumberは使ってないので、他のスペックがあれば余計そうですが、YMMVです。

于 2013-10-19T02:44:25.390 に答える