1

これを行うための戦略はありますか?現在完全に統合されている Rails コードベースがあります (同じアプリがバックエンドの重労働と同じように JS アセットを提供しています) が、この 2 つを別々のサービスに抽出し、それぞれ独自の git リポジトリに入れ、別々のサーバーで実行することを考えています。 .

APIエンドポイントのドキュメントとしても機能する小さなRuby HTTPクライアントを使用してAPIのユニット/受け入れテストを計画しており、JSフロントエンド(Brunch.io、Backbone、Chaplin)は内部でユニット/受け入れテストを行います同様に...しかし、2つを統合するキュウリのテストを書くべきだと思いますよね? それらのキューはどこに住んでいますか?どのレポで?

ここでの洞察に感謝します。ありがとう!

4

1 に答える 1

2

一般的な意味で、サーバーとクライアントの両方にコードがある場合、それを保持する「適切な」場所は、アプリのどちら側がより中心的または「重い」か (クライアントまたはサーバー) によって異なります。

そうは言っても、質問で物事を説明する方法からすると、Railsアプリを「プライマリ」と見なしているように聞こえます。たとえば、現在、「Railsコードベース」によって統合/提供されている「JSアセット」があると述べています...JSサーバーによって提供されているRailsアセットではありません;-)

これで理論的なレベルでの答えは出ましたが、コードを Rails のコードベースに入れるのは実用的な理由からも理にかなっていると思います。Cucumber は Rails のツールであり、JS のツールではありません。Ruby 以外のコードをテストするために使用することもできますが、最終的には Ruby によって実行されます。

確かなことはわかりませんが、Cucumber の仕様を JS コードベースに入れ、それを Rails コードベースから実行しようとすると、頭痛の種になると思います。さらに、これは 2 つのコードベースを非常に密接に結び付けます: テストを実行するには、テストランナーに両方のコードベースが必要です。一方、Cucumber を Rails ランドに保持する場合、テスト ランナーは Rails コードだけで実行でき、別のコードベースに対して実行できます。 JS コードを持つサーバー。

最終的には、Cucumber は Rails ランドに属しているように思えますが、別の方法 (および JS リポジトリに保存すること) は、私には恐ろしいことではなく、潜在的により問題があるように思えます。

于 2013-01-16T23:18:06.630 に答える