我在我的Rails3.2.11应用程序中使用Rspec。我已经安装并设置了spork。我使用数据映射器作为ORM。然而,当spork运行时,运行单个测试需要一分多钟。即使正在运行的测试是空的。肯定有什么地方不对劲。但我想不通到底是什么。我的测试规范是这样的:require"spec_helper"require"cancan/matchers"describeUserdoend我的规范帮助文件可以在这里找到:https://gist.github.com/4593609当我对rspec计时时:➜booksgit:(dev)✗timerspec--drbspec/models/test_
我对Sinatra比较陌生,我想找出一种方法将RSpec与我的Sinatra设置集成。配置.rurequire'sinatra'require'mongoid'require'uri'require'./lib/twilio_wrapper'Mongoid.load!("./config/mongoid.yml")Dir["./controllers/*.rb"].each{|file|requirefile}runRack::URLMap.new('/'=>HomeController.new,'/users'=>UsersController.new(TwilioWrapper.n
我无法为我想编写的方法提出一些测试。该方法将对一些数据进行哈希处理,并使用它创建一组关联的模型。问题是,我很难弄清楚编写此类测试的最佳实践是什么。例如,代码将:采用如下所示的散列:{:department=>'CS',:course_title=>'Algorithms',:section_number=>'01B':term=>'Fall2012',:instructor=>'BobDylan'}并将其保存到模型Department、Course、Section和Instructor。这将需要多次调用model.find_or_create等。我如何着手测试此方法的每个单独目的,例如
我有一部分Rails2Web服务应用程序用作SOAP服务(历史原因,应用程序的其余部分是REST)。只需两个操作AddLead和ShowLead,wsdlon/soap/wsdl。我想通过Rspec集成测试来测试这个操作。尝试使用Savongem(/spec/integration/soap_spec.rb):require"spec_helper"require'rubygems'require'savon'describe"Leads"dobefore(:all)dowsdl="http://localhost:3000/soap/wsdl"wsdl="http://www.exa
这是我在RSpec中使用的一个很好的技术,我也想在使用Shoulda和Shoulda-context的项目中使用它。但我不知道这是否可能。有办法做到这一点吗?我想要的:在引用嵌套上下文中的let子句的外部上下文中定义一个setup(before)block。这样,内部上下文可以配置在外部setup中引用的值,并且setup仍然可以在内部上下文中保持DRY。RSpec示例(这个示例很简单——请假设我的真实示例在beforeblock中有更多我不想重复的代码):describeThingdobeforedo#Noticethat`user`isn'tdefinedhere--it'sdef
我是rspec的新手,我想使用rspec来测试我的非Rails项目。我在网上能找到的几乎都是关于使用rspec测试Rails项目的,所以我需要一些帮助来组织项目结构。如下所示,我有一个空目录my_first_project并且我在该目录中执行了rspec--init。我的问题是,我应该把我的项目代码放在哪里?直接在my_first_project或在my_first_project\lib或其他地方?MacBook-Pro:my_first_projectyi$rspec--initcreate.rspeccreatespec/spec_helper.rbMacBook-Pro:my_
我想测试一个特定的方法是否不会引发类AError的错误。它可以引发BError、ArgumentError、几乎任何其他类型的错误,或者没有错误,只是不是AError。是否有任何未弃用的(从RSpec3开始)的方法来做到这一点?我试过了expect{object.do_something}.not_toraise_error(AError)但是我明白了ArgumentError:`expect{}.not_toraise_error(SpecificErrorClass)`isnotvalid,use`expect{}.not_toraise_error`(withnoargs)ins
作为序言,我对Rails和一般的MVC格式非常陌生。我正在使用Rspec进行所有测试,但我的controller_spec中的这段代码有问题:describe"GETshow"docontext'withanadminusersignedin'dowith:adminlet!(:invitation){create:invitation}beforedosign_inadminget:show,id:invitation.idendit{shouldrespond_with:ok}it{shouldrespond_with_content_type:html}it{shouldrend
有什么方法可以访问RSpec示例中的Ruby警告列表吗?我在正在测试的库中收到以下错误,并想为其编写单元测试。warning:previousdefinitionofBUILD_FILEwashere 最佳答案 我最终启动了一个新流程来评估流程输出。在我的例子中,问题是一个重新定义的常量,所以我通过将类两次加载到新的Ruby进程中然后使用IO流读取输出来进行测试:it'shouldnotredefineBUILD_FILEconstant'doroot_path="#{File.dirname(__FILE__)}/../../..
我正在使用ruby和rspec与watir一起编写自动化测试用例。C:\Users\san\Dragon>gemlist'rspec'***LOCALGEMS***rspec(3.4.0,2.14.1)rspec-core(3.4.3,2.14.8)rspec-expectations(3.4.0,2.14.5)rspec-mocks(3.4.1,2.14.6)rspec-support(3.4.1)当我使用以下命令运行测试用例时。C:\Users\san\Dragon>rspec-fspec\sampletest_spec.rb:65我遇到了这个错误C:/Ruby193/lib/