A BDD framework for writing and running specs
rgf is a currently experimental attempt at an RSpec-esque BDD testing framework for Python.

Basically we're aiming for syntax along these lines:

from rgf import describe, it

with describe("That Thing"):
 @it("test desc")
 def spec(context):
 # test code here
 assert stuff()

x_spec.py files go in a directory structure under, by convention, spec/ in the root of your project and are run using:

rgf spec

The specifics of the syntax are currently wrong, being borrowed directly from RSpec. Suggestions warmly received.

(Current front-runners are subject and context in place of describe, keeping it for the spec decorator.)

Because the spec functions are just functions, not methods, and are hoovered up by the @it decorator they're effectively anonymous and can all have the same name for ease of thinking:

with subject('This Class'):
 @it('can calculate X')
 def s(world):

 @it('can account for Y')
 def s(world):

The aim is for something pythonic, with nested context and good spec names being the primary focus: minimum magic, minimum fuss.

last updated on:
May 21st, 2012, 13:49 GMT
developed by:
Matt Patterson
license type:
MIT/X Consortium License 
ROOT \ Programming \ Quality Assurance and Testing
Download Button

In a hurry? Add it to your Download Basket!

user rating



Rate it!
What's New in This Release:
  • Bump to update the Changelog, which I had neglected to do for 0.2.0 (sorry)
read full changelog

Add your review!