問題タブ [shoulda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
565 参照

ruby - Shoulda を使用した単体テスト

編集:この問題は時々しか発生しません

これは、TextMate 内からテストを実行した場合にのみ発生するようです (ルビを指定して手動で実行する場合でも)。ターミナルから実行すると、すべてが桃色になります…</p>


ここにいくつかのコードがあります:

私はそれが私に次のようなことを教えてくれることを期待しています:

しかし、私は得ています:

それで、私は何が欠けていますか?上記のコード例は、私が作成できると思うほど単純で、問題がわかりません!

0 投票する
3 に答える
2818 参照

ruby - RSpec対Shoulda?

私はユニットテストシーンに不慣れです。ユニットテストを使用してから約2か月になります。Rubyで単体テストを行うときは、現在TDDスタイルに従い、Test :: Unit::TestCaseを使用しています。また、RSpecとそれがBDD方法論に従う方法についても読みました。また、2つのフレームワークの中間にあるShouldaについても読みました。私の質問は、どのフレームワークをRSpecまたはShouldaに費やす必要があるのか​​、それともTest :: Unit ::TestCaseに固執する必要があるのか​​ということです。この件についてのご意見をお待ちしております。

0 投票する
2 に答える
917 参照

ruby-on-rails - Shouldaを使用した検証のテストに関する問題

これが私のテストです。

これが私のモデルです。

また、nameがnilに設定されている場合、予期されるエラーに「空白にすることはできません」が含まれ、エラーが発生します:nameアラート名を空白にすることはできません。(なし)

理解できません 。なんで?ありがとう!

0 投票する
3 に答える
2210 参照

ruby-on-rails - rake が単体テストを実行していない

アプリを使用config.gemからGemfileバンドラーを使用するようにアップグレードしましたが、単体テストの実行が停止していることに気付きました。ちょっと奇妙で、どこから調べればよいのかよくわかりません。

実行するrake test:units --traceと、環境がセットアップされていることがわかり、実行する予定のファイルがリストされますが、戻ってきます。

のようなものを使用して 1 つの個別のファイルを実行しようとすると、同じことが行われrake -I"lib:test" test/unit/foo.rbますautotest

それはすべて非常に奇妙です。ファイルが読み込まれているように見えますが、実際の単体テストは実行されていません。

私はshouldaandを使用しfast_contextていますが、これらが問題である可能性があると思いましたが、標準構文を使用した単体テストを含めると、def test_まだ実行されないため、それらではないと思います。

ヒントや指針をいただければ幸いです。それらが再び機能するようになるまで、盲目的にコーディングしているように感じます!


だからここに私は今いる:

バンドラーを使用する理由は、heroku に依存関係をインストールするためと、github の git リポジトリから入手した gem を使用したかったからです。preinitializer要するに、 for bundler を削除し、を使用するように戻したということconfig.gemです。を使用して github リポジトリを使用できないという事実を回避するためにconfig.gem、自分のコピーを ruby​​gems にプッシュしました。これは正しい動きでしたか?


ここに preinitializer.rb があります

.gems ファイルがどのように役立つかはわかりません。なぜなら、それは heroku のみのものであり、git を介して検索する必要があるためですが、ここに私の gemfile があります。

0 投票する
2 に答える
686 参照

ruby-on-rails - Shoulda Ruby on Rails を使用して HTTP 応答を取得する

rspec から shoulda に移行していますが、http 応答にアクセスできないようです。誰かが私が間違っているかもしれないことを指摘できますか?

これを実行すると、@response が nill オブジェクトであるというエラーが表示されます。

0 投票する
1 に答える
2354 参照

ruby-on-rails - 多くの関係(および保護された属性)を持つファクトリーガール

私はこの種の関係を持っています:

コントローラー内のデフォルトのシナリオは次のようになります。

私はそれらの工場を書こうとしました:

しかし、私の構文は関連付けについて正しくありません。コメントの article_id 保護属性のため、少し注意が必要です。なのでアーティクルファクトリー内でアソシエーションを宣言した方がいいと思うのですが、処理の仕方がわかりません。

助けてくれてありがとう。

0 投票する
2 に答える
3110 参照

ruby-on-rails - NameError:初期化されていない定数Test :: Unit::AssertionFailedErrorがrails3にアップグレードするとき

RailsアプリケーションをRails3にアップグレードしようとしています。

機能テストを実行すると、多くのNameError: uninitialized constant Test::Unit::AssertionFailedErrorエラーが発生します。しかし、単体テストとWebサイト自体は正常に機能しているようです。

トレースは次のようになります。

ショルダーとアマゾンS3の両方の宝石は最新バージョンです。

私が間違っていることについて何か考えはありますか?

0 投票する
1 に答える
897 参照

ruby-on-rails - 「有効である」必要がありますが、「'handle_matcher':undefined method'matches?'」で失敗します。

私は次の仕様でrspec(rails 3)の上に「shoulda」を試しています:

そしてそれは失敗します

これで、両方を実行すると、テストは正常に実行されます

最後はShoulda::ActiveRecord :: Matchersを使用しているので、私の知る限り、shouldaは問題なくロードされます。

助言がありますか?

0 投票する
1 に答える
138 参照

ruby-on-rails - 関連付けがテストで作成されたオブジェクトを見つけられない

アプリには次のモデルがあります。

私は、Shoulda/FactoryGirl を使用してゲーム機能の一部をテストしています。これがテストです。

問題は、最後のアサートが失敗することです。私は次のような多くの醜いことを試しました:

しかし、問題の根本にたどり着くことができません。トランザクション フィクスチャを無効にしてみました (フィクスチャは使用しませんが、これは Factory girl にも影響すると思います)。他のテストでは役に立ちましたが、ここでは効果がありません。

セットアップ ブロックのアサートは、4 回の実行のうち約 1 回で失敗します。私はMySQLを疑おうとしています... RubyMineからデバッグすると、リロードステートメントですべてが通過しますが、コマンドラインからは通過しません。

0 投票する
2 に答える
1178 参照

ruby-on-rails - ヘルパーが機能しない場合

私は1つの仕様を持っています:

実行するrake specと、これが表示されます(ただし、コンテキストをそれに変更し、ブロックのsetup内容をitブロックに移動すると、すべて正常に動作します):

私のspec_helper.rb:

Rails 3 を使用しています。 rspec/shoulda/factory_girl は、Gemfile の次のコードによってアプリケーションに含まれます。