У меня есть небольшая программа для обуви (3.3.3) и небольшая консольная программа на рубине с селеном (3.4.4). Если я открываю консольную программу селена напрямую, все работает нормально, но если я хочу открыть ее через «exec («»)» через обувь, она ломается и закрывается.
Я думал, что ошибка связана с веб-драйвером, поэтому я написал простую консольную программу с некоторыми простыми выводами «путей», а обувь отображает консоль и вывод.
Дело в том, что программа selenium работала вчера, и я не могу найти проблему, почему она не работает сейчас.
Упрощенный код обуви выглядит следующим образом:
Shoes.app(width: 200, height: 200, resizable: false){
button("GO", width: 200) do
exec('ruby data/test.rb')
end
}
Вот простой код selenium-webdriver с именем "test.rb":
require 'selenium-webdriver'
Selenium::WebDriver::PhantomJS.driver_path =
"driver/phantomjs/bin/phantomjs.exe"
browser = Selenium::WebDriver.for :phantomjs
wait = Selenium::WebDriver::Wait.new(:timeout => 15)
browser.navigate.to
"http://www.accuweather.com/de/de/heinsberg/52525/weather-forecast/174475"
wetterElement = browser.find_element(:id, "wrap-forecast-feed")
@wetterData = wetterElement.text.gsub(/\n/, ',').split(",")
puts @wetterData[1]
gets.chomp
Shoes выдает следующее сообщение об ошибке в течение нескольких мс, прежде чем сломается:
Поэтому я поискал и нашел этот фрагмент кода:
def assert_file(path)
return if File.file? path
raise Error::WebDriverError, "not a file: #{path.inspect}"
end
def assert_executable(path)
assert_file(path)
return if File.executable? path
raise Error::WebDriverError, "not executable: #{path.inspect}"
end
Я действительно понятия не имею... Заранее спасибо.