有没有办法减缓Cucumber下Watir Webdriver的执行速度?

有没有办法减缓Cucumber下Watir Webdriver的执行速度?,cucumber,watir,watir-webdriver,Cucumber,Watir,Watir Webdriver,我们有没有办法在Cucumber下减慢Watir WebDriver的执行速度 我想直观地跟踪Watir执行的操作。目前,它的速度对我的眼睛来说太快了。并非普遍如此。您可以在每次与Selenium元素交互后,使用Monkey补丁程序element_call方法添加睡眠。在需要watir webdriver后导入此代码 module Watir class Element alias_method :watir_element_call, :element_call def e

我们有没有办法在Cucumber下减慢Watir WebDriver的执行速度


我想直观地跟踪Watir执行的操作。目前,它的速度对我的眼睛来说太快了。

并非普遍如此。您可以在每次与Selenium元素交互后,使用Monkey补丁程序element_call方法添加睡眠。在需要watir webdriver后导入此代码

module Watir
  class Element
    alias_method :watir_element_call, :element_call
    def element_call &block
      watir_element_call &block
      sleep 1
    end          
  end    
end

还要注意的是,猴子补丁通常是一个坏主意,当我更改实现(我计划这样做)时,这段代码将被破坏。

不是普遍的。您可以在每次与Selenium元素交互后,使用Monkey补丁程序element_call方法添加睡眠。在需要watir webdriver后导入此代码

module Watir
  class Element
    alias_method :watir_element_call, :element_call
    def element_call &block
      watir_element_call &block
      sleep 1
    end          
  end    
end

还要注意的是,猴子补丁通常是一个坏主意,当我更改实现(我计划这样做)时,这段代码将被破坏。

不是普遍的。您可以在每次与Selenium元素交互后,使用Monkey补丁程序element_call方法添加睡眠。在需要watir webdriver后导入此代码

module Watir
  class Element
    alias_method :watir_element_call, :element_call
    def element_call &block
      watir_element_call &block
      sleep 1
    end          
  end    
end

还要注意的是,猴子补丁通常是一个坏主意,当我更改实现(我计划这样做)时,这段代码将被破坏。

不是普遍的。您可以在每次与Selenium元素交互后,使用Monkey补丁程序element_call方法添加睡眠。在需要watir webdriver后导入此代码

module Watir
  class Element
    alias_method :watir_element_call, :element_call
    def element_call &block
      watir_element_call &block
      sleep 1
    end          
  end    
end

还要注意的是,Monkey Patching通常是个坏主意,当我更改实现(我计划更改)时,此代码将中断。

而Watir本身没有用于减慢执行速度的API,您可以使用底层SeleniumWebDriver的
AbstractEventListener
在某些类型的操作之前/之后添加暂停

如果要查看操作的结果,可能需要在更改值并单击元素后暂停。这可以通过创建以下
AbstractEventListener
并在创建浏览器时传入来实现:

class ActionListener < Selenium::WebDriver::Support::AbstractEventListener    
  def after_change_value_of(element, driver) 
    sleep(5)
  end

  def after_click(element, driver) 
    sleep(5)
  end
end

browser = Watir::Browser.new :firefox, :listener => ActionListener.new
class ActionListenerActionListener.new
有关可侦听的事件的完整列表,请参阅
.

虽然Watir本身没有减缓执行速度的API,但您可以使用底层Selenium WebDriver的
AbstractEventListener
在某些类型的操作之前/之后添加暂停

如果要查看操作的结果,可能需要在更改值并单击元素后暂停。这可以通过创建以下
AbstractEventListener
并在创建浏览器时传入来实现:

class ActionListener < Selenium::WebDriver::Support::AbstractEventListener    
  def after_change_value_of(element, driver) 
    sleep(5)
  end

  def after_click(element, driver) 
    sleep(5)
  end
end

browser = Watir::Browser.new :firefox, :listener => ActionListener.new
class ActionListenerActionListener.new
有关可侦听的事件的完整列表,请参阅
.

虽然Watir本身没有减缓执行速度的API,但您可以使用底层Selenium WebDriver的
AbstractEventListener
在某些类型的操作之前/之后添加暂停

如果要查看操作的结果,可能需要在更改值并单击元素后暂停。这可以通过创建以下
AbstractEventListener
并在创建浏览器时传入来实现:

class ActionListener < Selenium::WebDriver::Support::AbstractEventListener    
  def after_change_value_of(element, driver) 
    sleep(5)
  end

  def after_click(element, driver) 
    sleep(5)
  end
end

browser = Watir::Browser.new :firefox, :listener => ActionListener.new
class ActionListenerActionListener.new
有关可侦听的事件的完整列表,请参阅
.

虽然Watir本身没有减缓执行速度的API,但您可以使用底层Selenium WebDriver的
AbstractEventListener
在某些类型的操作之前/之后添加暂停

如果要查看操作的结果,可能需要在更改值并单击元素后暂停。这可以通过创建以下
AbstractEventListener
并在创建浏览器时传入来实现:

class ActionListener < Selenium::WebDriver::Support::AbstractEventListener    
  def after_change_value_of(element, driver) 
    sleep(5)
  end

  def after_click(element, driver) 
    sleep(5)
  end
end

browser = Watir::Browser.new :firefox, :listener => ActionListener.new
class ActionListenerActionListener.new
有关可侦听的事件的完整列表,请参阅
.

您想降低脚本的速度吗?你想完成什么?如果你描述你的推理,你可能会得到更好的答案。你想放慢你的脚本吗?你想完成什么?如果你描述你的推理,你可能会得到更好的答案。你想放慢你的脚本吗?你想完成什么?如果你描述你的推理,你可能会得到更好的答案。你想放慢你的脚本吗?你想完成什么?如果你描述你的推理,你可能会得到更好的答案。