
[英]Ruby 2.4 => 2.7: NoMethodError: undefined method `new' for BigDecimal:Class
我将现有项目的 Ruby 从 2.4 更新到 2.7,现在rspec对每个规范都给出了这个错误。 我找不到错误的来源。 我的项目中没有BigDecimal 。 我没有写测试。 如何找到导致问题的 gem? 这是application.rb:17 : 这是我的:test的 Gemfile: 该应用程 ...
[英]Ruby 2.4 => 2.7: NoMethodError: undefined method `new' for BigDecimal:Class
我将现有项目的 Ruby 从 2.4 更新到 2.7,现在rspec对每个规范都给出了这个错误。 我找不到错误的来源。 我的项目中没有BigDecimal 。 我没有写测试。 如何找到导致问题的 gem? 这是application.rb:17 : 这是我的:test的 Gemfile: 该应用程 ...
[英]RSpec leaves record in test database
每当我运行用户测试时,RSpec 在测试完成后将 Fabricated 用户留在测试数据库中,这会扰乱我的其他测试。 我会做一个rake db:test:prepare ,但是当我再次运行我的测试时,记录会在我的数据库中重新创建。 我不知道为什么会这样。 它只发生在用户对象上。 在我的 spec_h ...
[英]How can I check that a form field is prefilled correctly using capybara?
我有一个正确的 label 字段,我可以用水豚毫无问题地填写它: 我想在填写之前检查它的值,但无法弄清楚。 如果我在fill_in之后添加以下行: 该测试失败了,尽管之前的填充工作正如我通过保存页面所验证的那样。 我错过了什么? ...
[英]Request spec only first context is success
我有一个请求规范,我想测试 CRUD。 问题是我首先提出的任何请求都会成功,但随后的 rest 会失败。 (意思是,在下面的情况下, GET会成功,但POST会失败。如果我切换 2 个上下文块, POST然后成功,然后GET失败)。 失败的测试表示响应是401 Unauthorized 。 我不确 ...
[英]How can I test the POST request an external webhook makes to my application?
伙计们这是我的场景我想测试这个外部 webhook 有没有办法使用 VCR 或其他工具来记录 webhook 对我的 Rails 应用程序发出的 POST 请求,以便我可以在 Rspec 中使用它来运行我的测试? webhook 的主体很长而且非常具体,这就是为什么我想以某种方式记录请求有没有办 ...
[英]How to compare dates doing a test rspec?
为什么我的测试比较时间有时会失败? 我怎样才能改进这个测试? 我想解决这个问题以始终通过测试 ...
[英]Is there a way I can force a record to not be destroyed when running a feature test in RSpec? (Rails 6)
对于上下文,我有一个名为delete_cars的 controller 方法。 在该方法内部,我在Car的ActiveRecord::Collection上调用了destroy_all 。 在destroy_all下方,我调用了另一个方法get_car_nums_not_deleted_from_ ...
[英]What can my stubbed method return to simulate a real response from the Stripe gem?
如果我想使用 rspec 创建存根,我通常会这样做: allow(my_object).to receive(:my_method).and_return("something else") 来自 Stripe 的 ruby gem 的 JSON 响应对 JSON 响应进行了包装,例如: 如果我正 ...
[英]How to get Rspec to use the same DB connection for reader and writer DB in rails 6?
对于上下文,出现这个问题是因为我们正在从 Rails 5 迁移到 Rails 6,并通过新的复制功能引入读取器/写入器数据库连接。 我们的具体问题是请求规范,着眼于使用交易固定装置。 当我们单独运行请求规范文件时,它们会通过。 当作为多文件传递的一部分运行时(例如在 circle CI 上使用的完 ...
[英]How to mock out calls to open-uri
我有一个使用“open-uri”的邮件程序。 但是当我尝试测试 class 的任何内容时,我收到此错误: 我找到了这篇 SO 帖子: How to rspec mock open-uri并认为它会有所帮助。 我试了一下: 我还尝试了“should_receive”而不是“stub”,但没有用。 我如 ...
[英]Helper method in a controller (created via `helper_method`) not being reachable in a RSpec helper test
可以说我在ApplicationController上有以下代码: 然后,在我的ApplicationHelper上我有一个方法,我想像这样测试它: 我想测试这两种情况,什么时候is_happy? 返回true时返回false 。 所以,我的选择是存根is_happy? 方法。 为此,我做了以下事情 ...
[英]Rspec: Difference between allow and allow_any_instance_of
我有一个简单的 MySQL 包装器 class,它将运行查询并返回结果。 我想测试一些涉及查询结果的东西,但我不想实际连接到数据库来获取结果。 我试过这个测试,但它不起作用: 用allow() () 替换allow_any_instance_of()是可行的。 我的印象是allow_any_inst ...
[英]Re-instancing a class after autoloading with Rails and RSpec
我有这个 Class,我在其中根据数据库表创建了一些属性: 这工作正常,但后来我用 RSpec 做了两个测试: 单元测试: 端到端测试: 当我运行rspec时,Rails 自动加载所有内容,并且创建的表单 class 还没有数据库中的任何语言,因此它没有任何name_属性。 第一个测试工作正常,但 ...
[英]Is there any way to output saved rspec output file in color?
如果我要运行“rspec spec/”并将生成的 output 保存到名为“spec_output.txt”的文件中。 有没有办法在终端中以彩色显示“spec_output.txt”? ...
[英]RSpec deprecation warning: The implicit block expectation syntax is deprecated
我正在将 Rails 系统上的 Ruby 从 Rails 5 升级到 6,作为第一步,我要升级所有 gem。 当我运行测试时,我收到以下消息: 测试通过了,但我不明白,我必须做什么才能避免弃用信息。 我的规范中引用的块: 我应该用什么来代替it { should_not change(FileAss ...
[英]After updating ruby to 2.7.1 rspec tests throws error `Bundler::GemfileError for status code 4 but Bundler::GemfileError is already registered`
使用 Rails 5.2.4.3 Mac OSX 卡特琳娜 10.15.6 将 ruby 更新到 2.7.1(通过 rvm)后运行rspec spec并收到错误: 切换到全局 gemset 解决了这个问题,但使用默认 gemset 继续抛出错误。 卸载并重新安装捆绑器并没有解决问题(确保捆绑器 ...
[英]Rspec Arrays not working as they should be?
测试应使用放置在 tag_id 参数中的 tag_id 更新项目(已创建)。 我知道我可以做到这一点,因为我已经在 postman 上尝试过并且每次都有效。 Rspec 告诉我标签无效,即使我记录了它的 ID(这意味着它存在)。 任何帮助,将不胜感激。 rspec 代码错误消息与日志我尝试改变 ...
[英]Check custom validation in RSpec that is run only on create
我有一个在创建时运行的自定义验证: 在我的规范中,我这样做: 我如何告诉 RSpec 在创建时运行验证? 谢谢 ...
[英]Rspec rerunning all tests with --only-failures, even passed ones
我们有一个 Ruby gem,它包装了 rspec 用于我们的 selenium 测试。 我试图通过重新运行以前运行的失败来实现重试逻辑,但在第二次运行时它只是重试所有内容,我认为这是因为它没有在第二次运行时加载 spec_helper,其中包含example_status_persistence_ ...
[英]How to test Sidekiq death handlers?
如何从 RSpec 命中 Sidekiq 的death_handlers ? config/initializers/sidekiq.rbSidekiq.configure_server do |config| # ... config.death_handlers << l ...