Ruby on rails 为什么控制台输出中会列出两次测试结果?

Ruby on rails 为什么控制台输出中会列出两次测试结果?,ruby-on-rails,testing,minitest,Ruby On Rails,Testing,Minitest,这就是我的测试结果当前输出到控制台的方式。请注意,“运行选项…运行:…”和“完成时间…”都列了两次 Running via Spring preloader in process 8515 Run options: --seed 3074 # Running: Run options: --seed 3074 # Running: 2018-02-14T14:46:14-06:00 - Changing from waiting_to_be_circulated to offered_t

这就是我的测试结果当前输出到控制台的方式。请注意,“运行选项…运行:…”和“完成时间…”都列了两次

Running via Spring preloader in process 8515
Run options: --seed 3074

# Running:

Run options: --seed 3074

# Running:

2018-02-14T14:46:14-06:00 - Changing from waiting_to_be_circulated to offered_to_user (event: offer)
..........

Finished in 1.059601s, 4.7188 runs/s, 4.7188 assertions/s.

5 runs, 5 assertions, 0 failures, 0 errors, 0 skips


Finished in 1.059780s, 4.7180 runs/s, 4.7180 assertions/s.
5 runs, 5 assertions, 0 failures, 0 errors, 0 skips
知道在哪里可以检查,看看是什么导致输出重复吗?我正在运行Rails 5.1.5和Ruby 2.4.1。请让我知道,如果你想看到更多的信息,我很乐意提供

这是我的测试助手.rb

ENV['RAILS_ENV'] ||= 'test'

require File.expand_path('../../config/environment', __FILE__)
require 'rails/test_help'

require 'minitest/autorun' 

require 'minitest/reporters'
# Minitest::Reporters.use!(
#   Minitest::Reporters::ProgressReporter.new(:color => true),
#   ENV,
#   Minitest.backtrace_filter
# )

# Integrate AASM gem's custom testing methods into minitest
require 'aasm/minitest'

require 'fileutils' # Used below in setting up CarrierWave

... <various CarrierWave settings also here> ...    

class ActiveSupport::TestCase
  include ApplicationHelper
  include ActionDispatch::TestProcess

  # Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order.
  fixtures :all

class ActionDispatch::IntegrationTest

  # Log in as a particular user
  def log_in_as(user, password: 'password', remember_me: '1')
    post login_path, params: { session: { email: user.email,
                                          password: password,
                                          remember_me: remember_me } }
  end
end
ENV['RAILS_ENV']| |='test'
需要文件。展开\u路径('../../config/environment',\u文件\u)
需要“rails/test\u帮助”
需要“微型测试/自动运行”
要求“小型测试/报告员”
#小测试::记者。使用!(
#Minitest::Reporters::ProgressReporter.new(:color=>true),
#环境,
#Minitest.backtrace_过滤器
# )
#将AASM gem的定制测试方法集成到minitest中
要求“aasm/minitest”
需要“fileutils”#用于设置CarrierWave
...  ...    
类ActiveSupport::TestCase
包括ApplicationHelper
包括ActionDispatch::TestProcess
#按字母顺序在test/fixtures/*.yml中为所有测试设置所有夹具。
固定装置:全部
类ActionDispatch::IntegrationTest
#以特定用户身份登录
def登录身份(用户,密码:'password',记住我:'1')
登录后路径,参数:{session:{email:user.email,
密码:密码,
记住我:记住我
结束
结束

您还可以告诉我们您在终端中键入了什么来实现此目的吗?:)当然,塔林!使用标准的
$rails test test/models/task_test.rb
进行单个测试,等等所有使用
$rails test
的测试都是奇数。我以前从未见过运行单个测试文件的方法。通常我会写
ruby-test/models/task\u-test.rb
rails-test=test/models/task\u-test.rb
(但我承认已经有一段时间了——我在工作中使用了rspec)谢谢你看一下@Taryn!high five今天花了一点时间在它上面,它看起来与minitest reporters gem有关,好像它以某种方式导致测试“在”原始测试的输出中运行(这可能就是它们的输出被嵌套的原因)。我暂时通过完全禁用宝石来绕过它。如果我发现问题的修复程序,将更新我的问题。w00t。真奇怪。很高兴你有一个临时的解决方案。。。(或者至少可以确定它的发展方向)。祝你好运,有更好的解决方案。