Так что в вашем коде вызов .screen не существует для объекта 'grid', на самом деле это метод, принадлежащий классу Screen, который является частью пакетов sikuli, которые я предполагаю.
Как видно из примеров, объект класса Screen создается локально. Вам нужно, чтобы этот объект создавался удаленно.
Watirgrid просто предоставляет удаленные объекты watir [-webdriver] через DRb. Он не знает о Сикули. Похоже, что в примерах вы просто используете watir-webdriver для запуска экземпляра браузера и перехода на первую страницу. С тех пор я предполагаю, что Sikuli выполняет большую часть работы.
Что вам действительно нужно, так это Sikuligrid =) Так как вы - единственный человек, которого спрашивают, я не собираюсь идти на патчи с обезьянами Watirgrid, так как может быть лучший способ достичь того, что вы пытаетесь сделать.
Используя DRb, вы даже можете сделать что-то очень простое, как это:
remote.rb
require 'drb'
require 'java'
java_import "org.sikuli.script.SikuliScript"
java_import "org.sikuli.script.Region"
java_import "org.sikuli.script.Screen"
DRb.start_service("druby://127.0.0.1:61676", Screen.new)
DRb.thread.join
local.rb
require 'drb'
screen = DRbObject.new_with_uri("druby://127.0.0.1:61676")
screen.click("StartUpAdobe\/f.png",0)
На данный момент моя задача с watirgrid - включить тестирование watir [-webdriver] в распределенной сети. Однако я признаю полезность таких вещей, как веб-драйвер, для управления чем-то «иным», чем веб-приложением. Именно здесь такие инструменты, как Sikuli и даже nativedriver http://code.google.com/p/nativedriver/ выглядят очень привлекательно. Прямо сейчас, хотя мое внимание сосредоточено на создании пуленепробиваемой системы watirgrid, и, вероятно, следующей в списке является автоматизация браузера без помощи phantomjs ...