ruby-on-rails-3 - 将 rspec 2 测试组织到 rails 中的 'unit' 和 'integration' 类别中

标签 ruby-on-rails-3 testing rspec2

如何将 rspec 2 测试组织成“单元”(快速)和“集成”(慢速)类别?

  • 我希望能够仅使用 rspec 命令运行所有单元测试,而不是“集成”测试。
  • 我希望能够只运行“集成”测试。

最佳答案

我们有相同性质的小组。 然后我们在本地开发箱和 CI 上一个接一个地运行。

你可以简单地做

bundle exec rake spec:unit
bundle exec rake spec:integration
bundle exec rake spec:api

这就是我们的 spec.rake 的样子

  namespace :spec do
    RSpec::Core::RakeTask.new(:unit) do |t|
      t.pattern = Dir['spec/*/**/*_spec.rb'].reject{ |f| f['/api/v1'] || f['/integration'] }
    end

    RSpec::Core::RakeTask.new(:api) do |t|
      t.pattern = "spec/*/{api/v1}*/**/*_spec.rb"
    end

    RSpec::Core::RakeTask.new(:integration) do |t|
      t.pattern = "spec/integration/**/*_spec.rb"
    end
  end

关于ruby-on-rails-3 - 将 rspec 2 测试组织到 rails 中的 'unit' 和 'integration' 类别中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10029250/

相关文章:

ruby-on-rails-4 - Rails 4 Rspec expect{}.to change not registering 尽管测试按计划工作

ruby-on-rails-3 - Rails 模型 before_save 与 MD5 摘要

ruby - GIt 部署 + 配置文件 + Heroku

ruby-on-rails - 带有 'omniauth-facebook' gem 的无效 redirect_uri

javascript - Intern JS - 测试定义之前的异步 Hook ?

ruby-on-rails-3 - 如何使用 RSpec 测试在 Rails 中具有过滤器的搜索 Controller 操作?

ruby - 配置Active Admin的标签has_many

testing - 如何测试作为 OSGi Bundle 实现的服务契约?

testing - 使用 Bonita 作为后端测试应用程序的资源

ruby-on-rails - 如何使用 rspec 和 factory girl 创建具有特定 id 的模型