Questions tagged «rspec»

RSpec是一个受JBehave启发的针对Ruby编程语言的行为驱动开发(BDD)框架。它包含自己的基于JMock的完全集成的模拟框架。该框架可以被视为特定领域的语言(DSL),类似于自然语言规范。

10
何时使用RSpec let()?
我倾向于使用before块来设置实例变量。然后,在示例中使用这些变量。我最近来了let()。根据RSpec文档,它用于 ...定义记忆的辅助方法。该值将在同一示例中的多个调用之间缓存,但不会跨示例。 这与在before块中使用实例变量有何不同?还有什么时候应该使用let()vs before()?
447 ruby  rspec 

16
如何运行单个RSpec测试?
我有以下文件: /spec/controllers/groups_controller_spec.rb 我要在终端中使用哪个命令来仅运行该规范,并在哪个目录中运行该命令? 我的宝石文件: # Test ENVIRONMENT GEMS group :development, :test do gem "autotest" gem "rspec-rails", "~> 2.4" gem "cucumber-rails", ">=0.3.2" gem "webrat", ">=0.7.2" gem 'factory_girl_rails' gem 'email_spec' end 规格文件: require 'spec_helper' describe GroupsController do include Devise::TestHelpers describe "GET yourgroups" do it "should be successful and return 3 items" do …

14
如何在RSpec中运行单个测试/规格文件?
我希望能够运行一个规范文件的测试-例如,对于我正在编辑的一个文件。 rake spec执行所有规格。我的项目不是Rails项目,因此rake spec:doc不起作用。 不知道这是否重要,但这是我的目录结构。 ./Rakefile ./lib ./lib/cushion.rb ./lib/缓冲 ./lib/cushion/doc.rb ./lib/cushion/db.rb ./规格 ./spec/spec.opts ./spec/spec_helper.rb ./spec/db_spec.rb
282 ruby  testing  rspec 

6
Rspec:“ array.should == another_array”,但无需担心顺序
我经常想比较数组,并确保它们以任何顺序包含相同的元素。在RSpec中有一种简洁的方法吗? 这是不可接受的方法: #to_set 例如: expect(array.to_set).to eq another_array.to_set 要么 array.to_set.should == another_array.to_set 当数组包含重复项时,此操作将失败。 #sort 例如: expect(array.sort).to eq another_array.sort 要么 array.sort.should == another_array.sort 当数组元素未实现时,此操作将失败 #<=>
235 ruby  testing  rspec 

8
iOS测试/规范TDD / BDD和集成与验收测试
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 在iPhone上进行行为驱动开发的最佳技术是什么?还有哪些开放源码示例项目可以证明这些技术的合理使用?这是我找到的一些选项: 单元测试 测试::单元样式 OCUnit / SenTestingKit,如《iOS开发指南:单元测试应用程序及其他OCUnit参考》中所述。 示例:iPhoneUnitTests,Three20 抓住 GHUnit Mac版Google工具箱:iPhone单元测试 RSpec样式 猕猴桃(还带有嘲笑和期望) 雪松 Jasmine和UI Automation,如灵巧的iOS接受测试规范中所示 验收测试 硒风格 UI自动化(在设备上工作) UI自动化仪器指南 UI自动化参考文档 Tuneup js-与UIAutomation一起使用的很棒的库。 将用户界面操作捕获到自动化脚本中 可以使用Cucumber(用JavaScript编写)来驱动UI自动化。这将是一个很棒的开源项目。然后,我们可以编写Gherkin来运行UI自动化测试。现在,我只写Gherkin作为注释。 更新:Zucchini框架似乎融合了黄瓜和UI自动化!:) 旧博客文章: Alex Vollmer的UI自动化教程 O'Reilly Answers UI自动化教程 Adi Saxena的UI自动化教程 UISpec与UISpecRunner UISpec是Google Code上的开放源代码。 UISpec具有全面的文档。 FoneMonkey 黄瓜风格 弗兰克(Frank)和伊库克(iCuke)(基于黄瓜与iPhone的对话) 在弗兰克谷歌集团具有比更活动iCuke谷歌集团。 Frank可以在设备和模拟器上运行,而iCuke只能在模拟器上运行。 与iCuke的步骤定义相比,Frank似乎具有更全面的步骤定义集。而且,弗兰克在其Wiki上也有一个步骤定义纲要。 我建议我们合并iCuke和Frank(类似于Merb&Rails合并的方式),因为它们具有相同的共同目标:适用于iOS的Cucumber。 KIF(保持功能)由广场 Zucchini框架使用Cucumber语法编写测试,并使用CoffeeScript进行步骤定义。 加法 OCMock的嘲讽 OCHamcrest和/或Expecta期望 …


15
缺少链接的主机!请提供:host参数或设置default_url_options [:host]
我已经搜索了大约90分钟,但仍然没有答案。我在哪里设置default_url_options?我已经将其设置为config.action_mailer.default_url_options解决其他地方的相同错误,但是现在尝试在RSpec规范中使用URL辅助程序时遇到此错误。我不知道在哪里设置default_url_options。 Failure/Error: listing_url(listing).should match(/\/\d+-\w+$/) RuntimeError: Missing host to link to! Please provide :host parameter or set default_url_options[:host] # ./spec/routing/listing_routing_spec.rb:9:in `block (3 levels) in <top (required)>' 此代码与emails / ActionMailer无关,只是需要一个URL而不是路径。 有任何想法吗?

14
在RSpec中测试模块
在rspec中测试模块的最佳实践是什么?我有一些模块包含在少数几个模型中,现在我只对每个模型进行重复测试(几乎没有差异)。有办法干燥吗?
174 ruby  unit-testing  rspec 



4
设置RSpec来测试gem(不是Rails)
使用添加的rspec-rails生成器可以很容易地设置RSpec来测试Rails应用程序。但是如何添加RSpec来测试开发中的gem?我没有使用珠宝商或类似工具。我只是使用Bundler(bundle gem my_gem)来设置新gem的结构,并手动编辑* .gemspec。我还添加s.add_development_dependency "rspec", ">= 2.0.0"了gemspec并做了一个bundle install。 是否有一些不错的教程,接下来如何使RSpec工作?
154 testing  rubygems  rspec  gem  rspec2 


13
如何使用RSpec检查JSON响应?
我的控制器中有以下代码: format.json { render :json => { :flashcard => @flashcard, :lesson => @lesson, :success => true } 在我的RSpec控制器测试中,我想验证某个场景确实收到了成功的json响应,因此我有以下内容: controller.should_receive(:render).with(hash_including(:success => true)) 尽管在运行测试时出现以下错误: Failure/Error: controller.should_receive(:render).with(hash_including(:success => false)) (#<AnnoController:0x00000002de0560>).render(hash_including(:success=>false)) expected: 1 time received: 0 times 我是否检查响应不正确?

4
如何使用水豚检查表单字段是否正确填充?
我有一个带有适当标签的字段,可以毫无问题地用水豚来填充: fill_in 'Your name', with: 'John' 我想先检查一下它具有的值,然后再弄清楚。 如果我fill_in在以下行之后添加: find_field('Your name').should have_content('John') 该测试失败了,尽管正如我通过保存页面验证的那样,之前的填充工作正常。 我想念什么?
145 forms  rspec  capybara 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.