Skip to main content

behave is behaviour-driven development, Python style

Project description

Travis CI Build Status Latest Version Downloads License

behave is behavior-driven development, Python style.

logo

Behavior-driven development (or BDD) is an agile software development technique that encourages collaboration between developers, QA and non-technical or business participants in a software project.

behave uses tests written in a natural language style, backed up by Python code.

First, install *behave*.

Now make a directory called “features/”. In that directory create a file called “example.feature” containing:

# -- FILE: features/example.feature
Feature: Showing off behave

  Scenario: Run a simple test
    Given we have behave installed
     When we implement 5 tests
     Then behave will test them for us!

Make a new directory called “features/steps/”. In that directory create a file called “example_steps.py” containing:

# -- FILE: features/steps/example_steps.py
from behave import given, when, then, step

@given('we have behave installed')
def step_impl(context):
    pass

@when('we implement {number:d} tests')
def step_impl(context, number):  # -- NOTE: number is converted into integer
    assert number > 1 or number == 0
    context.tests_count = number

@then('behave will test them for us!')
def step_impl(context):
    assert context.failed is False
    assert context.tests_count >= 0

Run behave:

$ behave
Feature: Showin off behave # features/example.feature:2

  Scenario: Run a simple test          # features/example.feature:4
    Given we have behave installed     # features/steps/example_steps.py:4
    When we implement 5 tests          # features/steps/example_steps.py:8
    Then behave will test them for us! # features/steps/example_steps.py:13

1 feature passed, 0 failed, 0 skipped
1 scenario passed, 0 failed, 0 skipped
3 steps passed, 0 failed, 0 skipped, 0 undefined

Now, continue reading to learn how to the most of behave. To get started, we recommend the tutorial and then the feature testing language and api references.

More Information

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

behave-1.2.5.zip (542.1 kB view details)

Uploaded Source

behave-1.2.5.tar.gz (385.7 kB view details)

Uploaded Source

behave-1.2.5.tar.bz2 (348.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

behave-1.2.5-py2.py3-none-any.whl (110.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file behave-1.2.5.zip.

File metadata

  • Download URL: behave-1.2.5.zip
  • Upload date:
  • Size: 542.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for behave-1.2.5.zip
Algorithm Hash digest
SHA256 07c741f30497b6f9361a9bc74c68418507cd17e70d6f586faa3bff57684a2ec8
MD5 c943cb1568d856be4b1f1d730766ad35
BLAKE2b-256 74527ffce21dbad1b75c7da35b2c6f6f05ce2302364bf2f3b0abc6e1979b8e27

See more details on using hashes here.

File details

Details for the file behave-1.2.5.tar.gz.

File metadata

  • Download URL: behave-1.2.5.tar.gz
  • Upload date:
  • Size: 385.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for behave-1.2.5.tar.gz
Algorithm Hash digest
SHA256 81b731ac5187e31e4aad2594944fa914943683a9818320846d037c5ebd6d5d0b
MD5 3af4bc2886d2be982e41bfaba61da3bc
BLAKE2b-256 9efd430a2784e4892b2585dd1926acd847b815e3fc0f00fbe0800e376b9c0222

See more details on using hashes here.

File details

Details for the file behave-1.2.5.tar.bz2.

File metadata

  • Download URL: behave-1.2.5.tar.bz2
  • Upload date:
  • Size: 348.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for behave-1.2.5.tar.bz2
Algorithm Hash digest
SHA256 8c182feece4a519c5ffc11e1ab3682d25d5a390dd5f4573bb1296443beb9d7c7
MD5 baf74695d42137c6c62d9348b25f3dec
BLAKE2b-256 dc287cb21401d5f9b144e8bc71b1c5f9f9097f81a2d539ccc8d127fe8d3f6468

See more details on using hashes here.

File details

Details for the file behave-1.2.5-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for behave-1.2.5-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 89238a5e4b11ff607e8ebc6b4b1fb1a0b1f3d794fba80e1fb4b6b3652979c927
MD5 1cb1f8b925fa215926748b63e420d086
BLAKE2b-256 e69f5232e488461eb4f6eec04d49da22050f32f54eebf212525d67ef198f2527

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page