2017-01-25 6 views
7

これは私がこのRuby scriptを単体テストする必要があったということでした。これは、いくつかの宝石を使用するSinatraベースのWebアプリケーションです。埋め込みJRubyでRubyスクリプトを実行すると、宝石を使用できますか?

私はRubyよりもJavaの経験が豊富ですが、時間は非常に重要です(そして優雅さはありません)。したがって、JUnitクラスでスクリプトを実行し、依存するすべてのサブシステムをモックすると、 on(Webサーバー、データベース)。そうすれば、RubyシステムのテストにJavaのスキルを使うことができます。 RubyをJavaプログラムに埋め込むことができるようなlooksです。

質問:宝石を埋め込みRubyで使用できますか? e。 マシン(Windows、Linux、Mac)でテストを実行できるJavaプログラムを作成し、手動でいくつかの宝石をインストールする必要はありませんか?はいの場合、どうですか?

注:実際の宝石である必要があります。モックは大丈夫です。

アップデート1(2017年1月25日午後一時14分): 1つの明白な解決策は、依存関係なしに別のRubyファイルにそのスクリプトのロジックを抽出することです。それはおそらくコードの80%です。それで、宝石を持たなくても論理ファイルをテストすることができました。

答えて

2

JRubyを使用していると仮定しています。 thisthisを確認してください。これにより、Jruby自体の中からJunitを使用することができます。

関連する問題