((未定义的方法`'NoMethodError))在Ruby / Selenium中使用applitools EYES时

时间:2016-11-30 15:41:41

标签: ruby selenium

我只是想在Eyes类上设置一个常量,但是我得到一个非常奇怪的错误。它在设置API密钥时有效,但设置任何其他常量(如save_new_testshost_osmatch_level请参阅documentation))会在下面给出错误。我不知道我在做什么,而不是在设置API密钥时。谢谢你的帮助!

env.rb:

require 'selenium-webdriver'
require 'eyes_selenium'

Before do |scenario|

  $driver = Selenium::WebDriver.for :chrome
  $driver.manage.window.resize_to(1050, 900)
  @eyes = Applitools::Eyes.new
  @eyes.api_key = 'my_api_key'
  @eyes.save_new_tests = true  # <-- Errors here
  @eyes.open(app_name: 'my_app', test_name: scenario.title, driver: $driver)

end

错误:

undefined method `  ' for #<Object:0x007fdc778eb740> (NoMethodError)
./features/support/env.rb:10:in `Before'

1 个答案:

答案 0 :(得分:2)

▶ '  '.codepoints
#⇒ [
#    [0] 8194,
#    [1] 8194
# ]

以上是我从错误描述中复制粘贴“未定义方法”内容的结果。

那就是说,你不小心在MacOS上输入了unicode en-space(可能是 AltGr SPACE ,或者从某些网页示例中复制粘贴。)重新输入行手动,一切都应按预期工作。