首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails 4最小最小设置

问Rails 4最小最小设置
EN

Stack Overflow用户
提问于 2014-06-20 02:08:16
回答 3查看 796关注 0票数 1

在阅读完rails指南docs后,我注意到minitest开箱即用,所以它可以立即使用,不需要安装任何其他东西。默认情况下,Rails4会使用它。

事实上,我使用的是minitest-reporter gem,它的效果很不错。

当我看到这样定义gemfile的:test组的示例时,就会感到困惑:

代码语言:javascript
复制
group :test do
  gem 'minitest-rails'
  gem 'minitest-rails-capybara'
  gem 'minitest-colorize'
  gem 'minitest-focus'
end

为什么需要包含一个minitest-rails gem ??使用后一代rails或其他类型的规范??

我在这里有点困惑,所以任何关于Rails 4最小集成的想法都将不胜感激。

EN

回答 3

Stack Overflow用户

发布于 2014-06-20 02:50:01

根据mini-test rails的自述文件,它使得测试的Rails生成器将以最小的风格生成。这也使得它可以在Rails ActiveSupport::TestCase测试类中使用。(这就是Rails测试用例所做的事情)。

minitest附带了ruby,但是Rails的ActiveSupport::TestCase,所有的Rails测试类,通常不使用minitest。minitest-rails做到了这一点。

这个项目的目标是在Rails TestCase类中启用Minitest。您的测试将继续继承ActiveSupport::TestCase,它现在将支持规范DSL。您可以使用标准模型、控制器、资源和其他生成器生成测试文件:

https://github.com/blowmage/minitest-rails

更让人困惑的是,在ruby的新版本中,我之前不小心提到了'Rails‘,但重要的是ruby的新版本,Minitest确实存在,而旧的Test::Unit不存在。但是Minitest有一种“假装是Test::Unit”模式--这就是Rails ActiveSupport::TestCase通常使用的旧的Test::Unit风格的测试--即使它实际上是提供它的最小的库。minitest-rails使其支持较新的Minitest::Spec::DSL样式。

票数 2
EN

Stack Overflow用户

发布于 2014-06-20 02:36:04

minitest-rails已经是您正在使用的minitest-rails-capybara的依赖项,并已添加到test组中。

因此,无论您是否显式地将minitest-rails添加到Gemfile中,它都将针对您的应用程序进行安装。但是,您可能希望显式地指定要使用的特定版本的minitest-rails,在这种情况下,您应该将gem添加到具有所需版本的gem文件中(在代码中没有这样做)。

票数 1
EN

Stack Overflow用户

发布于 2014-06-21 01:28:39

如果您对使用Minitest的spec DSL不感兴趣,那么您不需要包含minitest-rails。如果您对Capybara的spec DSL不感兴趣,那么您不需要包含minitest-rails-capybara,尽管如果您想使用Capybara,您将需要一些其他机制来将其添加到您的应用程序中。minitest-capybara gem不做任何rails集成。

即使您使用测试样式测试而不是规范样式测试,也可以添加这两个库来添加Capybara支持。Capybara gem为minitest-rails-capybara测试添加了测试风格和规范风格的生成器。在Gemfile上尝试使用git blame来查找添加了这两行的提交,因为提交消息可能会解释为什么它们会出现在应用程序中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24313488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档