草庐IT

rspec-puppet

全部标签

ruby - 我可以在中间停止 RSpec 测试运行吗?

有时在我开始rspec测试后,我意识到我想要改变一些东西;如果它是一个长期运行,我希望能够在中间停止它,改变它是什么,然后重新运行测试。有人能告诉我这是否可行吗?如果可行,该怎么做? 最佳答案 可以通过按两次ctrl-C在中间停止RSpec测试。 关于ruby-我可以在中间停止RSpec测试运行吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/12082811/

ruby - 如何使用 RSpec 测试 STDIN

好的,需要帮助进行测试。我想测试这个类(class)收到一个字母“O”并且当调用“move_computer”方法时,返回该人在cli上输入的任何内容。我的心理子处理器告诉我这是一个简单的分配变量的东西,以在STDIN上保存随机的人工输入。只是现在不明白...有人指出我正确的方向吗?这是我的课...classPlayerdefmove_computer(leter)puts"computermove"@move=gets.chompreturn@moveendend我的测试看起来像...describe"tictactoegame"docontext"theplayerclass"do

ruby - Capybara 和 Rspec 没有范围界定

我的模型Price具有以下范围和属性。defself.totalself.sum(:amount)+self.sum(:tax)enddefself.todaywhere(:date=>Date.today)enddefself.for_datawhere(:bought=>true)end我有获取当前用户今天总量的作用域链。Today我写了一个规范来测试这个。#user_pages_specdescribe'OverviewPage'doit'showsspending'domake_user_and_loginprice=FactoryGirl.create(:price)clic

ruby - 如何重构 API 的 RSpec 测试

我有一系列针对基于Sinatra的API的RSpec测试,我想重构它们以使其更简单一些并减少重复。这是一个路由测试示例:describe'post/sectionswithemptydata'dobeforedoparams={:site_id=>site.id,:page_id=>page.id,}post'/sections',params,@sessionendspecify{last_response.status.should==200}specify{json_response['id'].should_notbe_nil}specify{json_response['ty

ruby - 在 RSpec 中捕获和断言 Meta 标签

我正在尝试编写一个单元测试来断言几个元标记值(在响应部分下)。如何使用属性标签检查单个值?例如:到目前为止,这就是我所得到的。但它返回失败。it"shouldcheckmetafields"doget:show,{:format=>'html'}r=response.bodyr.shouldhave_selector('meta',:content=>@site.title)end 最佳答案 Capybara的have_selector匹配器采用一个选项:text,而不是:content:r.shouldhave_selector(

ruby-on-rails - 如何使用 RSpec 更新测试模型中的属性

我被RSpec中的一个规范所困。如何更新模型的属性以使其为零?在更新Controller规范下进行验证更好吗?下面是一个示例代码。describeUserdodescribe".validation"dobefore(:each)do@user=User.create!({:username=>"dexter_morgan"})end...context"giveninvalidattributes"do#howcanImaketheusernamenil?it"rejectsblankusername"endendend 最佳答案

ruby-on-rails - Rails Rspec 模型规范用户:电子邮件 ActiveRecord::RecordInvalid

试图找出我的rspec测试失败的原因。最值得注意的是看起来自相矛盾的失败消息。声明我有一个ActiveRecord::RecordInvalid错误,这正是我断言应该发生的事情。这是我的user.rb...validates_presence_of:email...这是我的users_spec.rb...it"isinvalidwithoutemail"doFactory(:user,email:nil).shouldraise_error(ActiveRecord::RecordInvalid)end...这是输出:Failures:1)Userauser(ingeneral)isi

ruby - 在 rspec 中匹配参数的属性值

有没有办法在rspec中匹配参数的属性value?检查thedocumentation看起来还有其他可用的匹配器,例如anything、an_instance_of和hash_including-但没有检查对象属性值的方法。示例-假设我有这个实例方法:classDateParserdefparse_year(a_date)putsa_date.yearendend然后我可以这样写一个期望:dp=DateParser.newexpect(dp).toreceive(:parse_year).with(some_matcher)我想让some_matcher检查parse_year是用任何

ruby-on-rails - rspec - 找不到命令

作为作业的一部分,我正在创建一个基本网站。当rails服务器未运行且我对根目录执行“rspec”时,将执行rspec。但是测试失败。当我启动railsserver并从另一个终端窗口执行rspec时(进入根目录后),rspec不起作用。我收到以下消息-Tushars-MacBook-Pro:recipefindertusharsaurabh$rspec-bash:rspec:commandnotfound请告诉我如何修复它。 最佳答案 也许你的rspec命令没有在系统范围内安装,没关系,试试运行bundleexecrspec它应该可以

ruby-on-rails - 使用 RSpec 测试用户身份验证

我使用简单的Rails4.1.0应用程序,不使用设计。我正在测试应用程序Controller:classApplicationController我对authenticate_user!方法有疑问。完整规范seehere.方法规范:describe'authenticate_user!'docontext'whenuserloggedin'dobefore{subject.send(:current_user=,create(:user))}it'donothing'doexpect(subject.send(:authenticate_user!)).toeqnilendendcon