Plain-english functional testing of voice systems
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
features [BUGFIX] Big bunch o' updates Mar 14, 2012
lib [UPDATE] Bump version Mar 14, 2012
log First working code, allowing creation of a Rayo driver and some very … Oct 6, 2011
.gitignore First working code, allowing creation of a Rayo driver and some very … Oct 6, 2011 [UPDATE] Bump version Mar 14, 2012
Gemfile Basic gem layout Oct 5, 2011
Guardfile Basic gem layout Oct 5, 2011
LICENSE.txt Formatting fix Oct 7, 2011
cucumber.yml Basic gem layout Oct 5, 2011


Automated functional testing of voice applications is typically difficult and expensive. Not so when we can specify our systems using Cucumber. cucumber-voip provides a powerful set of features based on Punchblock and rspec-rayo which allow you, using the Rayo protocol, to drive a voice application using plain English Cucumber scenarios as if you're the end user.


  • Rayo connection manager and Cucumber step definitions for common functional testing scenarios


  • A Rayo server, eg rayo-server on Voxeo PRISM


gem install cucumber-voip FIXME (gem install, anything else)


See the features/ directory


Original author: Ben Langfeld



There is a huge list of things that need to be done in order for this project to be more useful:

  • A whole bunch more step definitions need to be added
  • Generators should be provided for in-app and standalone usage
  • A boat-load of documentation is required on the following topics:
    • How to setup cucumber-voip in your application or stand-alone
    • How to write features
    • How to write extra step definitions

Note on Patches/Pull Requests

  • Fork the project.
  • Make your feature addition or bug fix.
  • Add tests 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 so I can ignore when I pull
  • Send me a pull request. Bonus points for topic branches.


Copyright (c) 2011 Ben Langfeld. MIT licence (see LICENSE for details).