草庐IT

generator_spec

全部标签

ruby-on-rails - rspec spec 自动逻辑分组(按 "tags")

是否有任何现有的解决方案(最好是gem)来使用rspec运行一些规范片段?例如:rspec.#runswholetestsuiterspec.--keywords=project#runsallspecsthathave"project"keywordtheresomewhere或类似的东西? 最佳答案 您可以通过向描述、上下文或测试提供键值对来在rspec中使用标签,如下所示:describe"Asetoftests",:constraint=>'slow'describe"Anothersetoftests",:focus=>t

ruby-on-rails - 异常通知 gem "ERROR: Failed to generate exception summary"

使用exception-notificationgem已经有一段时间了,相当成功,但是我对每封电子邮件正文顶部的电子邮件条目感到恼火,就在实际错误之后。问题文本是:-------------------------------Request:-------------------------------ERROR:Failedtogenerateexceptionsummary:ActionView::Template::Error:Missingrack.input接下来的几行甚至总是相同的。这说明什么?我该如何解决这个问题,以便在任何有意义的事情上升到堆栈跟踪的顶部之前我不再看到这

ruby rubocop : how to freeze an array constant generated with splat

我正在分配一个这样的数组常量:NUMS=*(2..9)Rubocop说C:卡住分配给常量的可变对象。NUMS=*(2..9)^^^^^所以我试试NUMS=*(2..9).freezeRubocop说C:卡住分配给常量的可变对象。NUMS=*(2..9).freeze^^^^^^^^^^^^尝试过NUMS=(*(2..9)).freezeRubocop说E:意外的标记tRPAREN(使用Ruby2.0解析器;在AllCops下使用TargetRubyVersion参数进行配置)NUMS=(*(2..9)).freeze^尝试过NUMS=[1,2,3,4,5,6,7,8,9].freeze

ruby-on-rails - 使用 RSpec 2.5 运行 rcov 时跳过 spec/中的文件

当为Rails3应用程序运行rakespec:rcov时,spec/目录中的文件被包含在覆盖率统计中,但我不想他们是。我只想要我的实际应用程序的覆盖率统计信息。在旧版本的RSpec中,可以使用spec/rcov.opts文件中的--exclude"spec/*"行对其进行自定义,但它似乎该文件不再被Rspec2读取。我尝试创建一个.rcov文件,因为spec/spec.opts更改为.rspec,但也没有人阅读。我找到了一些关于如何在定义rake任务时执行此操作的文档,但我宁愿不覆盖提供的rake任务——看起来这一定是其他人也尝试过的事情。如何自定义不包括在覆盖率统计中的文件?作为引用

ruby-on-rails - rails script/generate 默认跳过不必要的文件

自从我开始使用rspec等之后,Script/generate变得非常烦人。我不再需要单元测试文件和fixtures,但是script/generate无论如何都会生成它们。是否可以将--skip-fixtures和--skip-test设置为系统范围(或至少项目范围)的默认设置? 最佳答案 您可以编辑您的应用程序脚本/生成文件以自动附加选项#!/usr/bin/envrubyARGV 关于ruby-on-rails-railsscript/generate默认跳过不必要的文件,我们在S

ruby - MiniTest::Spec 文件应该如何命名?

我想使用MiniTest::Spec,我找到了一些资源来开始,但没有一个提到测试文件(或规范文件)应该命名什么,以及它们应该放在哪里:test/test_*spec/*_spec.rb那么我应该使用哪一个呢? 最佳答案 假设您使用的是rake,您可以在rake文件中指定您自己的路径,例如Rake::TestTask.newdo|t|t.libs 关于ruby-MiniTest::Spec文件应该如何命名?,我们在StackOverflow上找到一个类似的问题:

ruby-on-rails - 炼油厂 CMS : generating migrations for existing models within an engine

我想向我在RefineryCMS引擎中创建的模型添加一个属性。我知道我可以执行以下操作:rails生成迁移AddPartNumberToProductspart_number:string手动将迁移文件从db/migrate移动到vendor/extensions/products/db/migrate但是是否有命令首先将迁移生成到正确的文件夹中?谢谢! 最佳答案 根据@parndt(theleaddeveloperoftheRefineryproject),我上面概述的方法是正确的。

ruby - 有没有办法将命令行参数传递给 spec/rspec?

试图将一些参数传递给rspec,但无法为此目的找到任何合适的命令行选项。我可以为此使用环境变量,但不确定这是配置测试的最佳(也是最透明)方式。那么,我该如何传递命令行参数呢?如果不能-哪个是最好和最可接受的替代方案? 最佳答案 一种简洁的方法是为您的选项添加标签,尽管这可能不适用于您的情况。rspec--tagsleep_5_seconds然后在你的spec_helper.rb中RSpec.configuredo|c|before(:each,:sleep_5_seconds=>true)dosetup_5_second_sleep

ruby-on-rails - 为什么 spec_helper 有这个 ENV ["RAILS_ENV"] ||= "test"?

有没有人想在测试以外的其他环境中使用spec_helper,或者为什么要这样配置?允许自定义测试环境? 最佳答案 环境可以有任何可能的名称。您可以使用多个测试环境,甚至可以为您的测试环境起一个别名,而不仅仅是test。因为将您的测试环境命名为test并不意味着您不能选择以不同的方式命名它。 关于ruby-on-rails-为什么spec_helper有这个ENV["RAILS_ENV"]||="test"?,我们在StackOverflow上找到一个类似的问题:

ruby-on-rails - rails 生成器 : generate files based on already existing rails files

我想制作一个生成器,根据应用程序中已有的文件(例如,View或Controller)创建文件(和目录等)。所以如果我们有这样设置的View-app-views-layouts-application.html.erb-users-index.html.erb-show.html.erb-etc...我想基于它们创建我能做的文件(只用ruby​​)directories=Dir.entries("#{Rails.root}/app/views")directories.eachdo|directory|unlessdirectory=="."ordirectory==".."files=