2017-07-16 178 views
0

我有一个小鞋(3.3.3)程序和一个小型红宝石控制台程序与硒(3.4.4)。 如果我直接打开硒控制台程序一切正常,但如果我想要通过鞋“exec(”“)”打开它,它会打破并关闭。红宝石鞋执行另一个红宝石程序

我以为错误是webdriver,所以我写了一个简单的控制台程序,带有一些简单的“puts”输出,鞋子显示控制台和输出。

事情是...硒程序昨天工作,我找不到问题,为什么它不现在。

简化的鞋码是这样的:

Shoes.app(width: 200, height: 200, resizable: false){ 
    button("GO", width: 200) do 
     exec('ruby data/test.rb') 
    end 
} 

这里来命名简单硒的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 

鞋给我的以下错误消息为几个msecs之前它断裂: enter image description here

所以,我看着它,发现这个代码片断:

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 

我真的不知道...... 预先感谢您。

回答

0

明白了... 与鞋子应用程序的文件夹是UTF-8格式。只是改变了名称,它的工作。