cucumber-scout

Cucumber steps for verifying Scout metrics

Usage

Install the gem:

gem install cucumber-scout

In your features/support/env.rb:

require 'cucumber/scout'

You can now write crazy features like this:

Feature: Response Time
  As a impatient user
  Our app should be super fast

  Background:
    Given my Scout account name is 'railsmachine'
    And my Scout email and password are '[email protected]' and 'sekret'

  Scenario: Passenger Queue
    When I get the metrics from the 'Passenger' plugin on 'example.com' 
    Then the 'passenger_queue_depth' should be 0

  Scenario: New Users are continuously being created
    When I get the metrics from the 'Business Metrics' plugin on 'example.com' 
    Then 'new_users' should be greater than 0

  Scenatiro: CPU usage is low
    When I get the metrics from the 'Server Overview' plugin on 'example.com'
    Then 'cpu_last_minute' should be less than 1

Retrieving descriptors names from Scout

https://scoutapp.com/ACCOUNT_NAME/descriptors.xml?host=HOSTNAME

Available Operators

  • be greater than

  • be less than

  • equal OR be

  • not equal OR not be

Running Cucumber Features

Drop your account info into config/scout.yml, then run ‘em like so:

cucumber features

The server you configure should have the Server Overview and Passenger Plugins installed. I’ll add fakeweb later, but for now, that’s how it works.

Note on Patches/Pull Requests

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add cucumber features for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2010 Jesse Newland. See LICENSE for details.