2

是否有所有漂亮的Selenium on Rails方法的实现wait_for_visible,例如 Selenium RCassert_not_text_presentruby​​ 驱动程序

如果没有,我将如何实施诸如 wait_for_visible 之类的东西?

4

1 回答 1

4

我解决了我自己的问题。

我在Git Hub 存储库中找到了官方的 ruby​​ 客户端

我编写了这个解决方案,所以你可以只require使用这段代码,然后你就可以使用所有有用的wait_for_*, assert_*, assert_not_*, wait_for_not_*, verify_*, and verify_not_*命令。

#need this for starts_with? and camelize
require 'activesupport'
module Selenium
  module Client
    class Driver
      def method_missing(method, *args)
        method_prefixes = %w(wait_for wait_for_not assert_ assert_not verify verify_not store)
        method_name = method.to_s

        prefix = method_prefixes.find {|pre| method_name.starts_with?(pre)}

        #if the method starts with a prefix, camelize the name.
        if(prefix)
          string_command method_name.camelize(:lower), *args
        else
          super *args
        end
      end
    end
  end
end
于 2008-10-17T10:07:55.023 回答