Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A sample cucumber test suite for testing non Ruby web applications

branch: master

Merge pull request #2 from galori/master

Updated gemfile to new ffi, mime-types, rspec-core to avoid "ffi gem not found" error
latest commit 054ae91e9e
Todd Huss authored
Octocat-spinner-32 features Use configuration block.
Octocat-spinner-32 Gemfile Change to rubygems to https://
Octocat-spinner-32 Gemfile.lock bundle updated to fix ffi gem not found error
Octocat-spinner-32 README.rdoc Updated README
Octocat-spinner-32 Rakefile Make use of ruby 1.9 hash syntax.
README.rdoc

Standalone Cucumber Test Suite

Introduction

Sometimes you inherit a non Rails or non Rack based web app such as PHP, Perl, Java / JEE, etc. I like using cucumber for functional testing so I put together this project structure to use as a starting point for testing non Ruby web based applications.

I've included a simple search.feature examples that uses Google. To switch to use your own development or staging server adjust the URL in features/support/env.rb. I have this example project setup to use Capybara with Webdriver (Selenium) but you can easily switch this to use Culerity or Webrat by editing features/support/env.rb.

Pull requests with updates/enhancements/bug fixes are always welcome!

Project Layout

  • features/*.feature : cucumber features

  • features/step_definitions/web_steps.rb : generic steps that apply to all features

  • features/step_definintions/[feature]_steps.rb : steps specific to an individual feature file

  • support/env.rb : configures the driver and the hostname to use

Prerequisites

Configuration

  • sudo bundle install

Running Features

  • To run all features: rake

  • To run a specific feature: cucumber features/search.feature

Debugging

  • To debug a specific step call save_and_open_page within the step

Additional Documentation

Contributors

Something went wrong with that request. Please try again.