Плъзнете и пуснете обект с пауза преди пускането

Използвам watir за автоматизирано тестване, по същество този проект е мениджър на задачи.

задачите попадат в ден от седмицата, но е необходима кратка пауза, за да може задачата да бъде поставена над този конкретен ден, за да бъде разпозната от javascript.

В момента това е проблем само с firefox, chrome е добре.

Въпросът ми е, можете ли да плъзнете и пуснете, но да задържите елемента върху област преди пускането?

в момента използва тази функция:

 dragTask.drag_and_drop_on dropTask

person samayres1992    schedule 18.12.2012    source източник
comment
Знаете ли за страница, която илюстрира проблема (т.е. страница, спрямо която могат да се тестват решения)?   -  person Justin Ko    schedule 18.12.2012
comment
@JustinKo за съжаление не мисля, че мога да споделя точния код и т.н. Мога само наистина да опиша. Има ли друг начин, по който мога да помогна с малко допълнителна информация?   -  person samayres1992    schedule 18.12.2012


Отговори (1)


Имах същия въпрос преди известно време с Watir-WebDriver и първоначално стигнах до маймунски корекции на Selenium ActionBuilder. Беше нещо подобно:

require 'watir-webdriver'

module Selenium
  module WebDriver
    class ActionBuilder

      def hold(timeout)
        @devices.merge!(:self => self) unless @devices[:self]
        @actions << [:self, :sleep, timeout]
        self
      end

    end # ActionBuilder
  end # WebDriver
end # Selenium


begin
  browser = Watir::Browser.new
  browser.goto "data:text/html,#{DATA.read}"
  button_1 = browser.button(id: "button1")
  button_2 = browser.button(id: "button2")
  browser.driver.action.
                 click_and_hold(button_1.wd).
                 move_to(button_2.wd).
                 hold(3).
                 release.
                 perform
ensure
  browser.close
end


__END__

<html>
  <button id="button1">Button 1</button>
  <button id="button2">Button 2</button>
</html>
person p0deje    schedule 19.12.2012
comment
Опитах това, но по някаква причина, за която съм сигурен, имаше пауза преди действието с плъзгане и пускане вместо по време? - person samayres1992; 20.12.2012
comment
Искате да кажете, че е изчакало преди плъзгане? - person p0deje; 20.12.2012
comment
Да, изглежда това е, което се случва за съжаление - person samayres1992; 20.12.2012
comment
Прав си. В момента нямам пример за тестване, нито имам стар код, но актуализираната версия трябва да работи. Моля, опитайте и ми кажете дали е добре. - person p0deje; 20.12.2012
comment
Наздраве за помощта, но за съжаление променливите мишка, клавиатура нямат стойности, не съм сигурен как да ги задам. Понастоящем получавам грешката 0 за 2 входа - person samayres1992; 20.12.2012
comment
Съжалявам за грешката, не съм го тествал. Актуализирах отговора и този път определено трябва да работи. - person p0deje; 21.12.2012