Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如果使用Pow,集成测试的默认\u url\u选项[:host]应该是什么?_Ruby On Rails_Ruby On Rails 3_Testing_Rack Pow - Fatal编程技术网

Ruby on rails 如果使用Pow,集成测试的默认\u url\u选项[:host]应该是什么?

Ruby on rails 如果使用Pow,集成测试的默认\u url\u选项[:host]应该是什么?,ruby-on-rails,ruby-on-rails-3,testing,rack-pow,Ruby On Rails,Ruby On Rails 3,Testing,Rack Pow,我正在使用Pow为我的开发环境提供服务。在我的config/environments/development.rb和test.rb文件中,我有一行: Rails.application.routes.default_url_options[:host] = "myapp.dev" 但这当然不起作用,因为我的RSpec/Capy集成测试是针对开发数据库运行的,与工厂数据不匹配 为什么这很重要?我认为测试套件已经启动了自己的机架服务器。既然这看起来很重要,我该设置什么呢?首先更改spec\u he

我正在使用Pow为我的开发环境提供服务。在我的config/environments/development.rb和test.rb文件中,我有一行:

Rails.application.routes.default_url_options[:host] = "myapp.dev"
但这当然不起作用,因为我的RSpec/Capy集成测试是针对开发数据库运行的,与工厂数据不匹配


为什么这很重要?我认为测试套件已经启动了自己的机架服务器。既然这看起来很重要,我该设置什么呢?

首先更改
spec\u helper.rb
中的端口,因为您显然是在开发环境中运行测试

Capybara.run_server = true 
Capybara.server_port = 7000
Capybara.app_host = "http://localhost:#{Capybara.server_port}" 

它似乎没有任何效果。我还必须更改默认的url选项。我不知道要将其更改为什么。您是否尝试过
localhost:7000