Examples and Tutorials for "behave" to simplify use for new developers.
HTML Python JavaScript CSS Gherkin Shell Batchfile
Pull request Compare This branch is even with behave:master.
Permalink
Failed to load latest commit information.
.extra/packages FIX: sphinxcontrib-ansi seems to be no longer in PyPI (and not instal… Oct 22, 2016
bin Remove paver as project build tool (superceded by: invoke). Oct 23, 2016
datatype.features PREPARE: Update to behave 1.2.4a1 and parse_type Oct 24, 2013
docs.html UPDATE: docs.html Oct 22, 2016
docs CLEANUP DOCS: Remove unneeded, no longer used themes. Oct 23, 2016
features FIX: Provide support for Python3. Local libdir=lib/python should now … Feb 16, 2016
lib/python UPATE: Make behave.example usable for next behave version. Oct 23, 2016
step_matcher.features CLEANUP: Old convention to use register_type(). Jul 10, 2014
tasks tasks: Replace pathlib with path.py in most cases (easier to use). Oct 22, 2016
.gitignore * Use sphinx ifconfig extensions: Add ansiterm_supported Nov 12, 2012
.pycheckrc INITIAL Feb 26, 2012
.pylintrc INITIAL Feb 26, 2012
.pythonrc.py INITIAL Feb 26, 2012
.travis.yml language: python May 16, 2012
MANIFEST.in INITIAL Feb 26, 2012
README.rst UPDATE: README w/ invoke (to replace paver later-on) Oct 22, 2016
VERSION.txt Increment VERSION to 1.2.5.1 (was: 1.2.5) Feb 16, 2016
behave.ini VERSION: 1.2.5 (was: 1.2.5a1) Jan 31, 2015
index.html Redirect to docs.html/index.html Feb 29, 2012
invoke.yaml Use invoke (to replace paver later-on) Oct 22, 2016
pylintrc Rename: .pylintrc => pylintrc (default configfile name) May 16, 2012
requirements.txt UPATE: Make behave.example usable for next behave version. Oct 23, 2016
setup.cfg PREPARE: Update to behave 1.2.4a1 and parse_type Oct 24, 2013
setup.py UPDATE: Make tox usable for next behave version Oct 23, 2016
setuptools_behave.py UPDATE to behave-1.2.5 Jan 31, 2015
tox.ini UPDATE: Make tox usable for next behave version Oct 23, 2016

README.rst

behave.example: Examples and Tutorials

Date: 2016-10-22
Category:BDD, testing
License:BSD

behave is a BDD test framework and cucumber-clone for Python. This project provides tutorials and examples how to use behave. It should extends the excellent documentation of behave.

SEE ALSO:
DOCUMENTATION:
REPOSITORIES:

INSTALL

The project provides tutorials and examples. Therefore, it should not be installed. To prepare the local installation, use the following command to install all prerequisites:

pip install -r requirements.txt

Snapshots of the behave and parse_type implementations are provided in the directory lib/python/. This directory is automatically used when you use bin/behave to run behave.

HOWTO

Cleanup local workspace:

invoke clean

Run behave tests:

invoke test

or:

bin/behave features/
bin/behave datatype.features/
bin/behave step_matcher.features/

Build Sphinx-based documentation with tutorials:

invoke docs

If invoke is not installed, use the following canned script instead:

bin/invoke command ...

SPECIAL CONFIGURATION

  • The behave PrettyFormatter is replaced with pretty2.SimplePrettyFormatter.

    This formatter implementation avoids cursor-ups while processing steps. ANSI escape cursor-up sequences do not work with sphinxcontrib-ansi when the sphinx-based documentation is generated (experimental feature for colorized behave output support).

  • sphinxcontrib-ansi does not process the following ANSI escape sequences correctly (set-color, set-bold):

    CSI{color_code}mCSI1m
    

    The color is reset in HTML output when set-bold is detected. The following ANSI escape sequence should be used instead:

    CSI{color_code};1m
    

    The behave runner, that is used here, patches the original functionality to use the second solution ("use_ansi_escape_colorbold_composites()").

  • The coloring schema in behave is adapted by setting the environment variable ("grey" is replaced with "white"):

    GHERKIN_COLORS="executing=white:comments=white"
    
  • To disable "ANSI coloring" support for Sphinx, set "ansiterm_supported = False" in "docs/conf.py". Note that this is not necessary on Windows.