Ruby page.rb:220:警告:在行中间遇到\r,在Mac上被视为一个空白

Ruby page.rb:220:警告:在行中间遇到\r,在Mac上被视为一个空白,ruby,selenium,gem,cucumber,Ruby,Selenium,Gem,Cucumber,我正在尝试在ruby cucumber、selenium webdriver和框架中运行测试。测试是在windows机器上编写的,我正在使用Mac。我得到以下错误。我在这个Git hub链接上发现- 这是可以解决的。我知道我需要安装“kpeg gem”,但它并没有解决问题 你能帮忙吗?我想知道修复它的步骤,以便于您更好地理解所提供链接上的文档。我将不胜感激 a3835233:astra yc98ag2$ cucumber --profile pom_mcom_qa_new_ui --tags

我正在尝试在ruby cucumber、selenium webdriver和框架中运行测试。测试是在windows机器上编写的,我正在使用Mac。我得到以下错误。我在这个Git hub链接上发现- 这是可以解决的。我知道我需要安装“kpeg gem”,但它并没有解决问题

你能帮忙吗?我想知道修复它的步骤,以便于您更好地理解所提供链接上的文档。我将不胜感激

a3835233:astra yc98ag2$ cucumber --profile  pom_mcom_qa_new_ui --tags  @bat
/Users/yc98ag2/Documents/Git/astra/lib/new_ui/pages/mew2/catsplash_page.rb:220: warning: encountered \r in middle of line, treated as a mere space
/Users/yc98ag2/Documents/Git/astra/lib/new_ui/pages/mew2/dbconpage.rb:55: warning: encountered \r in middle of line, treated as a mere space
/Users/yc98ag2/Documents/Git/astra/lib/new_ui/pages/mew2/hpmb_add_mediagrp_id.rb:83: warning: encountered \r in middle of line, treated as a mere space
/Users/yc98ag2/Documents/Git/astra/lib/new_ui/pages/mew2/mew_promos_bcom.rb:161: warning: encountered \r in middle of line, treated as a mere space
/Users/yc98ag2/Documents/Git/astra/lib/pages/mew2/catsplash_page.rb:220: warning: encountered \r in middle of line, treated as a mere space
/Users/yc98ag2/Documents/Git/astra/lib/pages/mew2/dbconpage.rb:55: warning: encountered \r in middle of line, treated as a mere space
/Users/yc98ag2/Documents/Git/astra/lib/pages/mew2/hpmb_add_mediagrp_id.rb:83: warning: encountered \r in middle of line, treated as a mere space
/Users/yc98ag2/Documents/Git/astra/lib/pages/mew2/mew_promos_bcom.rb:161: warning: encountered \r in middle of line, treated as a mere space
including Capybara::DSL in the global scope is not recommended!
Warning: you should require 'minitest/autorun' instead.
Warning: or add 'gem "minitest"' before 'require "minitest/autorun"'
From:
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in `block in require'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:232:in `load_dependency'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in `require'
  /Users/yc98ag2/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:1:in `<top (required)>'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in `block in require'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:232:in `load_dependency'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in `require'
  /Users/yc98ag2/Documents/Git/astra/features/step_definitions/oes_steps.rb:2:in `<top (required)>'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in `load'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in `block in load'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:232:in `load_dependency'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in `load'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/rb_support/rb_language.rb:95:in `load_code_file'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime/support_code.rb:180:in `load_file'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime/support_code.rb:83:in `block in load_files!'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime/support_code.rb:82:in `each'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime/support_code.rb:82:in `load_files!'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime.rb:184:in `load_step_definitions'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime.rb:42:in `run!'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/cli/main.rb:47:in `execute!'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/bin/cucumber:13:in `<top (required)>'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/bin/cucumber:23:in `load'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/bin/cucumber:23:in `<main>'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `eval'
  /Users/yc98ag2/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `<main>'
MiniTest::Unit::TestCase is now Minitest::Test. From /Users/yc98ag2/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit/testcase.rb:8:in `<module:Unit>'
undefined method `_run_suite' for class `Test::Unit::Runner' (NameError)
/Users/yc98ag2/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:676:in `<class:Runner>'
/Users/yc98ag2/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:261:in `<module:Unit>'
/Users/yc98ag2/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:15:in `<module:Test>'
/Users/yc98ag2/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/test/unit.rb:7:in `<top (required)>'
/Users/yc98ag2/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
/Users/yc98ag2/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in `block in require'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:232:in `load_dependency'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in `require'
/Users/yc98ag2/Documents/Git/astra/features/step_definitions/oes_steps.rb:2:in `<top (required)>'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in `load'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in `block in load'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:232:in `load_dependency'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in `load'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/rb_support/rb_language.rb:95:in `load_code_file'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime/support_code.rb:180:in `load_file'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime/support_code.rb:83:in `block in load_files!'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime/support_code.rb:82:in `each'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime/support_code.rb:82:in `load_files!'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime.rb:184:in `load_step_definitions'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/runtime.rb:42:in `run!'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/lib/cucumber/cli/main.rb:47:in `execute!'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/gems/cucumber-1.3.15/bin/cucumber:13:in `<top (required)>'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/bin/cucumber:23:in `load'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/bin/cucumber:23:in `<main>'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `eval'
/Users/yc98ag2/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `<main>'

我不认为
\r
是您向我们展示的堆栈中最大的问题

若要删除
\r
,请在您喜爱的文本编辑器中打开有问题的文件,并确保将行尾从windows样式(\r\n)替换为mac样式(\n)

您还应该阅读堆栈跟踪告诉您的其他错误和警告:

以及:

这也有望解决下一个问题,即


问题出在Windows样式的行尾(\r\n)。在某些文本编辑器的行尾处,您可能会看到^M个结尾

在linux上,您可以使用dos2unix修复行尾:

dos2unix /Users/yc98ag2/Documents/Git/astra/lib/new_ui/pages/mew2/catsplash_page.rb
在mac上还有另一种解决方案:

mv catsplash_page.rb catsplash_page.rb.bak
cat catsplash_page.rb.bak | col -b > catsplash_page.rb

根据我的经验,当您从某处复制和粘贴代码时,也会出现此问题。从头开始重新键入代码应该可以修复它

我是如何解决的:

  • 将代码复制并粘贴到普通编辑器中(我使用了Mac的默认文本编辑器)
  • 代码的清晰格式(我切换到普通模式)
  • 删除存在此问题的文件
  • 创建同名的新文件
  • 从纯文本编辑器复制并粘贴代码并保存

  • 这应该可以解决问题。

    对于其他错误,您有什么建议吗?
    MiniTest::Unit::TestCase is now Minitest::Test
    
    undefined method `_run_suite' for class `Test::Unit::Runner'
    
    dos2unix /Users/yc98ag2/Documents/Git/astra/lib/new_ui/pages/mew2/catsplash_page.rb
    
    mv catsplash_page.rb catsplash_page.rb.bak
    cat catsplash_page.rb.bak | col -b > catsplash_page.rb