草庐IT

自动化测试框架pytest教程13-调试

全部标签

ruby-on-rails - Heroku 错误 H13

自从我将我的应用程序部署到heroku以来,在过去的几天里,我一直在断断续续地收到这个错误。它发生在我开始使用unicorn作为服务器之前和之后。有时我可以通过使用herokurunrakedb:migrate然后herokurestart让它恢复运行,但这只修复了几个小时,它又坏了。至于网页,它说“应用程序错误”。日志不是很有用,但每次发生此错误时都会显示以下内容:[2014-10-27T21:13:31.675956#2]ERROR--:worker=1PID:8timeout(16s>15s),killing[2014-10-27T21:13:31.731646#14]INFO-

ruby-on-rails - 如何 stub 事件记录关系以使用 rspec 测试 where 子句?

我有一个看起来像这样的类:classFoo在测试#nasty_bars_present?我想编写一个rspec测试来对bars关联进行stub,但允许where自然执行。像这样的东西:describe"#nasty_bars_present?"docontext"withnastybars"dobefore{foo.stub(:bars).and_return([mock(Bar,bar_type:"Nasty")])}it"shouldreturntrue"doexpect(foo.nasty_bars_present?).tobe_trueendendend上面的测试给出了一个关于

ruby-on-rails - 你如何编写一个只为测试文件执行一次的设置方法?

我希望有一种方法可以针对每个文件运行一次,而不是针对每个测试运行一次。我已经看到一些对“之前”方法的引用,但似乎不适用于MiniTest。理想情况下,像这样:classMyTest 最佳答案 Before用于minitest使用specdsl时,相当于setup。您可以使用setup,如果您在test_helper.rb文件中使用setup,它将在所有测试之前执行一次。设置也可以在测试类中声明。使用设置,放置一个标志并在第一次更新标志。x=0setupdoifx==0x=x+1puts"Incrementedinx=#{x}"end

ruby-on-rails - 是否有一个库可以自动进行 CSS spriting?

CSSSpriting确实可以提高性能,但它并不是最容易阅读和维护的东西。是否有任何工具可以让我单独对图像进行编码,然后将它们聚合起来并用正确的蒙太奇子集替换HTML?我特别考虑RubyonRails插件,但如果有其他语言的包,我很乐意移植它。 最佳答案 SmartSprites试一试。 关于ruby-on-rails-是否有一个库可以自动进行CSSspriting?,我们在StackOverflow上找到一个类似的问题: https://stackoverf

ruby-on-rails - 使用 Rails 编写 RSpec 测试时,spec/requests 文件夹和 spec/controllers 应该放什么?

我对Rails还很陌生,并试图通过从一开始就实现测试来以“正确”的方式做事。昨天我使用脚手架生成器创建了我的第一个模型/View/Controller配置。虽然有人告诉我您真的不应该使用脚手架,但它很有用,因为我可以了解Rails代码的结构。我注意到的一件事是,自动生成的RSpec大部分放在spec/controllers文件夹中。然而当我看到thisepisodeofRailscasts,我注意到他用了railsgenerateintegration_test[test_name]将单个测试文件放入spec/requests文件夹的命令。然而,他编写的所有测试都与Controller

ruby-on-rails - ByeBug 调试器只工作一次 [Rails 4]

我遇到的问题是byebug类在第一个之后被忽略了。这很奇怪。我启动服务器。每当有byebug语句时,如果它是服务器启动后的第一个语句,它就会起作用。如果没有,它会显示此消息:***Byebug已经启动。忽略byebugcall.并且调试器工作的唯一方法是重新启动服务器(它只会工作一次)。非常感谢任何帮助。顺便说一句,每个项目都会发生这种情况。谢谢。 最佳答案 这是reportedandfixed,但尚未发布。现在要解决这个问题,请使用以下内容更新Gemfile:gem'byebug',github:'deivid-rodriguez

ruby-on-rails - 首先 RSPEC 测试,确保值为 1 或 -1

这里是新程序员。我是一名学生,正在研究我的项目,该项目是Reddit的克隆版。目前,我已被介绍给RSPEC。我必须开始编写自己的模型测试以用于进一步的练习。有问题的模型没有创建,它将在下一个任务中。有人可以检查我是否做对了吗?Inthenextcheckpoint,we'lladdaVotemodel.Thismodelwillfeatureaninclusionvalidation.Inclusionvalidationensuresthatavote'svalueattributeiseither1or-1.Ifavoteisinitializedwithanyothervalue

ruby-on-rails - Rspec raise_error 测试失败,即使该方法引发错误

我的测试是这样的:它“在通过非订阅或试用成员(member)资格时确实返回错误”期望(helper.description_for_subscription(recurring_plan)).toraise_error(RuntimeError)结束我的方法返回这个:失败“未知订阅模型类型!”然而Rspec返回此失败消息:失败/错误:expect(helper.description_for_subscription(recurring_plan)).toraise_error(RuntimeError)运行时错误:未知的订阅模型类型!这是怎么回事?? 最佳

ruby-on-rails - Rails 5 测试全局设置和拆卸

我正在使用Rails5beta的开箱即用的普通测试套件。我想知道是否有人知道如何运行全局设置并拆除。这是我在任何测试开始之前启动一个内存中的Elasticsearch集群并在测试完成后停止该集群所必需的原因。Rspec不是一个选项。 最佳答案 在Minitest(这是Rails4+中的默认测试环境)下,要获得“全局设置”行为,只需在test_helper.rb中运行任何内容即可。(在测试本身或任何setup方法之外),即在您从中加载测试环境的文件中。测试助手通常在测试中需要,因此它的代码在任何测试之前运行一次。对于“全局拆解”,Mi

ruby-on-rails - 自动加载路径和嵌套服务类在 Ruby 中崩溃

我在Rails5项目的app/services文件夹下有多个加载/需要类的问题,我开始放弃这个问题。首先要明确的是,services/是我在整个项目中使用的简单PORO类,用于从Controller、模型等中抽象出大部分业务逻辑。树看起来像这样app/services/my_service/base.rbfunny_name.rbmy_service.rbmodels/funny_name.rb失败#1首先,当我尝试使用MyService.const_get('FunnyName')时,它从我的模型目录中获取了FunnyName。当我直接执行MyService::FunnyName时,