8

この質問は Java で以前に回答済みです (クロムのコンソール ログを取得する) 。

しかし、私は Ruby バインディングを使用していますが、それが同様の機能を提供するかどうか疑問に思っていましたか?

Ruby のソース コードを見ましたが、LoggingPreferences への言及や参照が見当たりません。

ところで、私は RemoteWebDriver を使用して、目的の機能オブジェクトを渡しています。おそらく、そのオブジェクトでロギング設定を設定したいのですが、どこにあるのかわかりません。

4

2 に答える 2

8

返信が遅くなりましたことをお詫び申し上げます。

私は元々、Webdriverに以下を追加することでそれを達成しました。

module Selenium
  module WebDriver
    class Options

      #
      # Returns the available logs for this webDriver instance
      #
      def available_log_types
        @bridge.getAvailableLogTypes
      end

      #
      # Returns the requested log
      #
      # @param type [String] The required log type
      #
      # @return [Array] An array of log entries
      #
      def get_log(type)
          @bridge.getLog(type)
      end

    end
  end
end

「必須」の場合、これにより以下がサポートされました。

driver.manage.get_log(:browser)

ただし、selenium ruby​​ gem のバージョン 2.38 では、ロギング API が公開されています (実験的ではありますが)。

http://selenium.googlecode.com/git/rb/CHANGES

https://code.google.com/p/selenium/wiki/Logging

したがって、2.38 以降では、上記の拡張なしで次のように動作するはずです。

driver.manage.logs.get :browser
于 2014-07-20T22:03:34.570 に答える