behave
======
`behave `_ implements behaviour-driven
development (:abbr:`BDD (Behavior-Driven Development)`). BDD is an agile
software development technique that promotes collaboration between development,
quality assurance and non-technical or business staff on a software project. The
term was originally coined in 2003 by `Daniel Terhorst-North
`_ in response to :term:`test-driven
development ` and encompasses :term:`acceptance testing
` or customer-test-driven development practices as found in
:term:`extreme programming `. In `Selling BDD to the
Business `_, he
gave the following definition:
*‚BDD is a second-generation, outside–in, pull-based, multiple-stakeholder,
multiple-scale, high-automation, agile methodology. It describes a cycle of
interactions with well-defined outputs, resulting in the delivery of
working, tested software that matters.‘*
Gherkin
-------
Description language based on natural written language for the textual
specification of software requirements. Only certain keywords are predefined.
.. code-block:: gherkin
Scenario: Add an item to the database
Given an empty database
When an item with a summary is added
Then the number of items should be 1
and the queried item from the db should correspond to the added object.
Each scenario is an example intended to illustrate a specific aspect of the
application’s behaviour.
Installation
------------
You can install behave in your :ref:`virtual environments ` with:
.. tab:: Linux/macOS
.. code-block:: console
$ python -m pip install behave
.. tab:: Windows
.. code-block:: ps1con
C:> python -m pip install behave
.. toctree::
:titlesonly:
:hidden:
example