gpt4 book ai didi

ruby-on-rails - Rspec Net::SMTPServerBusy: 454 4.7.1: 中继访问被拒绝

转载 作者:行者123 更新时间:2023-12-01 11:43:57 24 4
gpt4 key购买 nike

我正在尝试测试注册电子邮件(通过设计发送),但我不断收到错误消息:

Net::SMTPServerBusy: 454 4.7.1 <model_spec@example.com>: Relay access denied

我正在使用 Capybara 运行 Rails 3.2.11,我(暂时)将我的 spec_helper.rb 和 test.rb 文件削减到最低限度,但仍然出现上述错误。

spec_helper.rb:

require 'rubygems'
require 'spork'

Spork.prefork do
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'rspec/autorun'
require 'capybara/rspec'
Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}

RSpec.configure do |config|
config.use_transactional_fixtures = true
config.infer_base_class_for_anonymous_controllers = false
end
end

Spork.each_run do
FactoryGirl.reload
end

测试.rb:

Upficial::Application.configure do
config.whiny_nils = true
config.consider_all_requests_local = true
config.action_controller.perform_caching = false
config.action_mailer.delivery_method = :test
end

测试本身非常简单:

require 'spec_helper'

describe User do
it "sends a confirmation email" do
@user = FactoryGirl.create(:user, email: "model_spec@example.com", username: "model_spec")
@user.send_confirmation_instructions
ActionMailer::Base.deliveries.last.to.should == [@user.email]
end
end

无论我使用 guard/spork 还是使用 'rspec spec/models/user_spec.rb' 运行,我都会得到相同的结果;测试总是失败

Net::SMTPServerBusy: 454 4.7.1 <model_spec@example.com>: Relay access denied

关于应该更改哪些配置的任何想法,如果有的话?

最佳答案

您的邮件服务器未配置为接受 *@example.com 的邮件。它拒绝为该域中继电子邮件。

您可以将该域添加到您的邮件服务器作为有效的传递目标,但由于这是一个测试环境,您可能应该将您的环境设置为使用电子邮件的测试机制:

# config/environments/test.rb

config.action_mailer.delivery_method = :test

这将导调用子邮件被放入 ActionMailer.deliveries 而不是实际发送到您的邮件服务器,因此您可以检查和测试它们的存在和内容。

如果 ActionMailer::Base.delivery_method 不是 :test,那么它将无法正常工作;您可以从控制台(通过 rails console test)测试它,看看它是否真的是 :test。如果不是,找出它被覆盖的位置并修复它。

关于ruby-on-rails - Rspec Net::SMTPServerBusy: 454 4.7.1: 中继访问被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17178395/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com