何时使用特定的 Rails 环境进行测试?
When To Use A Particular Rails Environment for Testing?
我在 Ruby Rails 上用 Michael Hartl 的书自学。当它发现使用seeds.rb文件时,我在开发环境中测试,它失败.当设置为测试环境时,成功。为什么?什么时候需要再次更改环境才能成功测试?
当您说 I tested within Development Environment, it Failed.
时,您并不是在 运行 进行自动化测试。您 运行 针对开发数据库的 rake db:seed
脚本。相同的任务可以 运行 针对测试环境 rake db:seed RAILS_ENV=test
。同样,这不是自动化测试。
rake db:seed
运行 针对开发环境失败的原因有很多。具体原因可以根据错误信息来判断。
development
环境是您日常工作的环境,adding/changing 通过更改代码来实现功能。默认情况下,大多数脚本假定您正在使用 development
环境。
test
环境是自动化测试所针对的环境 运行。对于 rails 教程,自动化测试是在 test
文件夹下的文件中编写的。当自动化测试在 rails 应用程序上 运行 - 使用 rake test
或其他方式 - test
环境用于 运行 这些测试。 test
数据库在 运行 测试之前清理,以确保测试 运行 从空白状态开始。
希望这能说明问题。
我在 Ruby Rails 上用 Michael Hartl 的书自学。当它发现使用seeds.rb文件时,我在开发环境中测试,它失败.当设置为测试环境时,成功。为什么?什么时候需要再次更改环境才能成功测试?
当您说 I tested within Development Environment, it Failed.
时,您并不是在 运行 进行自动化测试。您 运行 针对开发数据库的 rake db:seed
脚本。相同的任务可以 运行 针对测试环境 rake db:seed RAILS_ENV=test
。同样,这不是自动化测试。
rake db:seed
运行 针对开发环境失败的原因有很多。具体原因可以根据错误信息来判断。
development
环境是您日常工作的环境,adding/changing 通过更改代码来实现功能。默认情况下,大多数脚本假定您正在使用 development
环境。
test
环境是自动化测试所针对的环境 运行。对于 rails 教程,自动化测试是在 test
文件夹下的文件中编写的。当自动化测试在 rails 应用程序上 运行 - 使用 rake test
或其他方式 - test
环境用于 运行 这些测试。 test
数据库在 运行 测试之前清理,以确保测试 运行 从空白状态开始。
希望这能说明问题。