草庐IT

Test_stub

全部标签

ruby-on-rails - 在使用 WebMock 时遇到问题,没有正确 stub

Ruby1.9.3、RSpec2.13.0、WebMock1.17.4、Rails3我正在为公司应用程序编写测试。有问题的Controller显示客户调用的电话表,并允许排序/过滤选项。编辑测试失败,因为在我当前的设置中,路径没有呈现,因为recorder_server没有在本地运行,或者没有正确设置。也请帮忙解决这个问题。AErrno::ECONNREFUSEDoccurredinrecordings#index:Connectionrefused-connect(2)/usr/local/lib/ruby/1.9.1/net/http.rb:763:in`initialize'--

ruby-on-rails - 私有(private)方法 `test' 调用 #<ActiveRecord::ConnectionAdapters::TableDefinition:0x7f2a8fb07c30>

关闭。这个问题是notreproducibleorwascausedbytypos.它目前不接受答案。这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。关闭3年前。Improvethisquestion有没有人可以看看。我对此感到困惑。非常感谢你。[river@localhostdemo04]$rakedb:migrate--traceWARNING:'require'rake/rdoctask''isdeprecated.Pleaseuse'require'rdoc/task'(inRDoc2.

ruby-on-rails - "Web console is activated in the test environment"测试应用时

我是Rails的新手。因此,如果这是一个愚蠢的问题,请提前道歉。我已经阅读了MichaelHeartl的书并尝试自己编写一个应用程序。我已经编写了一些基本测试,但是在尝试使用测试应用程序时$bundleexec抽成测试我在终端上收到以下消息WebConsoleisactivatedinthetestenvironment,whichisusuallyamistake.Toensureit'sonlyactivatedindevelopmentmode,moveittothedevelopmentgroupofyourGemfile:gem'web-console',group::dev

ruby - RSpec - 无法 stub 类私有(private)方法

我正在尝试使用RSpec3消除对某些JSON发出外部请求的方法。我之前通过将其放入spec_helper.rb文件中来让它工作,但现在我重构了并将该方法移动到它自己的类中,stub不再有效。RSpec.configuredo|config|config.beforedoallow(Module::Klass).toreceive(:request_url)doJSON.parse(File.read(File.expand_path('spec/fixtures/example_data.json')))endendend类看起来像这样moduleModuleclassKlass#pu

ruby-on-rails - 直接在模型上调用 rspec 会导致 stub 错误!方法

运行时:rakespec:models一切正常,但当我这样做的时候rspecspec/models/spot_spec.rb有Spot.stub!:test1,我得到:undefinedmethod`stub!'forSpot:Class错误仅在我包含该stub时发生!行。有什么办法可以避免吗?我只想运行特定型号的规范。更新:使用Ruby1.9.2和RSpec2.4.0,这里是spot_spec.rb代码:requireFile.expand_path(File.dirname(__FILE__)+'/../spec_helper')describeSpotdobefore(:all)

ruby - 我可以使用 rspec 模拟来 stub 版本常量吗?

我的代码只需要在特定版本的ActiveRecord上运行(解决旧AR库上的错误的方法)。此代码测试ActiveRecord::VERSION常量的值以查看它是否需要运行。有没有办法在rspec中模拟这些常量,这样我就可以测试该代码路径,而无需在测试机器上安装正确的ActiveRecordgem? 最佳答案 我最终编写了一个辅助方法来让我在执行代码块时覆盖常量:defwith_constants(constants,&block)constants.eachdo|constant,val|Object.const_set(consta

ruby - Rspec:访问 Klass.any_instance.stub block 内的实例

Feature:testrandomnessInordertomakesomecodetestableAsadeveloperIwantArray#sampletobecomeArray#first如果可以访问Klass.any_instance.stubblock中的实例,那将是可能的。像这样:Array.any_instance.stub(:sample){instance.first}但是那个afaik是不可能的。无论如何,场景需要! 最佳答案 我找到了一个hacky解决方案,我已经在rspec版本2.13.1和2.14.4上

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 - 如何在 cucumber 测试中集成 parallel_test 和 thinking sphinx?

我有带有cucumber功能的Rails4应用程序。在一些测试中,我考虑了sphinx数据,例如:@javascript@sphinxFeature:EditaserviceScenario:EditingGivenIexistasan"individual"AndIhavefewservicesasindividualuserAndSphinxindexesallmodels...ThenIshouldseeI18ntranslationforkey"views.messages.notices.add.updated"@sphinx钩子(Hook)包含以下逻辑:Before('@s

ruby - 有什么方法可以验证模拟或 stub 是否有效?

假设我有一个用以下伪代码定义的类和方法classBookdefquick_inforeturntitle+""+authorendend如果我正在为某个使用此Book类的other类编写单元测试,我会为Book的方法调用创建一个stub。快速信息。现在我认为,如果我的Book类发生变化,例如,如果quick_info方法重命名为short_description,就会出现问题。我的单元测试仍将使用quick_info,看起来我的测试通过得很好,但实际上它应该失败。我想知道是否可以运行一些东西来验证我测试中的stub/模拟是否确实由正确的类和方法组成。也许像这样的东西可以在持续集成服务器