1

Rails3.0.11アプリを3.1.3に移行中です。そしてどういうわけか、これはキュウリとセレンのセットアップを使用しているときに受信した電子メールの量のemail_specテストを破ります。

config.action_mailer.delivery_method = :test:cache:file配信方法も試してみました。何がActionMailer::Base.deliveriesあっても、ログによれば空であっても、メールは送信されます。そして、rails 3.0.11に戻ると、すべてが再び機能します。

編集:特定のバージョンについては、ここに私のGemfile.lockがあります(スポークはキュウリの機能には使用されないことに注意してください)。

手がかり、誰か?

4

1 に答える 1

0

設定してみてください:

ActionMailer::Base.delivery_method = :test
ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.deliveries.clear

あなたの、features/support/env.rbまたはもっと単純にそれはどこかのバグです、ここで私たちは同様の問題を抱えている人々を見ることができます:https ://github.com/bmabey/email-spec/issues?sort=created&direction=desc&state=open&page=1

何らかの理由(バグなど)で実際の電子メールを送信しないように注意してください

delivery_method-配信方法を定義します。可能な値は、:smtp(デフォルト)、:sendmail、:test、および:fileです。または、カスタム配信メソッドオブジェクトを提供することもできます。MyOwnDeliveryMethodClass.new。カスタム配信エージェントに実装する必要のあるインターフェイスについては、Mailgemのドキュメントを参照してください。

perform_deliveries-メールメッセージまたはアクションメーラーメソッドで.deliverを呼び出すときに、実際にアクションメーラーからメールを送信するかどうかを決定します。これはデフォルトでオンになっていますが、機能テストを支援するためにオフにすることができます。

deliveries-delivery_method:testを使用してアクションメーラーを介して送信されたすべての電子メールの配列を保持します。ユニットおよび機能テストに最も役立ちます。

于 2012-01-28T00:54:24.493 に答える