Sha256: 7ae72c8c78242e94e2e91c2365db29d18c6d7438e5d31533a5e122bc26e2df3e

Contents?: true

Size: 1.22 KB

Versions: 23

Compression:

Stored size: 1.22 KB

Contents

module Perus::Pinger
    class Chrome < ChromeCommand
        description 'Connects to Chrome with the remote debugger and counts the
                     number of warnings and errors currently in the console of
                     the top Chrome window. The URL of the page is also sent
                     and can be compared to an expected string in an alert.'
        metric!
                     
        def run
            # we use a debugging protocol connection to read the console messages
            # in the top level window to count the number of warnings and errors
            warning_count = 0
            error_count = 0

            execute(['{"id":1,"method":"Console.enable"}']) do |json|
                if json['method'] == 'Console.messageAdded'
                    level = json['params']['message']['level']
                    if level == 'error'
                        error_count += 1
                    elsif level == 'warning'
                        warning_count += 1
                    end
                end
            end

            {
                chrome_warnings: warning_count,
                chrome_errors: error_count,
                chrome_url: @page['url']
            }
        end
    end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
perus-0.1.22 lib/perus/pinger/metrics/chrome.rb
perus-0.1.21 lib/perus/pinger/metrics/chrome.rb
perus-0.1.20 lib/perus/pinger/metrics/chrome.rb
perus-0.1.19 lib/perus/pinger/metrics/chrome.rb
perus-0.1.18 lib/perus/pinger/metrics/chrome.rb
perus-0.1.17 lib/perus/pinger/metrics/chrome.rb
perus-0.1.16 lib/perus/pinger/metrics/chrome.rb
perus-0.1.15 lib/perus/pinger/metrics/chrome.rb
perus-0.1.14 lib/perus/pinger/metrics/chrome.rb
perus-0.1.13 lib/perus/pinger/metrics/chrome.rb
perus-0.1.12 lib/perus/pinger/metrics/chrome.rb
perus-0.1.11 lib/perus/pinger/metrics/chrome.rb
perus-0.1.10 lib/perus/pinger/metrics/chrome.rb
perus-0.1.9 lib/perus/pinger/metrics/chrome.rb
perus-0.1.8 lib/perus/pinger/metrics/chrome.rb
perus-0.1.7 lib/perus/pinger/metrics/chrome.rb
perus-0.1.6 lib/perus/pinger/metrics/chrome.rb
perus-0.1.5 lib/perus/pinger/metrics/chrome.rb
perus-0.1.4 lib/perus/pinger/metrics/chrome.rb
perus-0.1.3 lib/perus/pinger/metrics/chrome.rb