By Amit Sethi / @dusual
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.
- Dan North
Let's come to this definition, later
Feature: Manipulate strings
In order to have some fun
As a programming beginner
I want to manipulate strings
Scenario: Uppercased strings
Given I have the string "lettuce leaves"
When I put it in upper case
Then I see the string is "LETTUCE LEAVES"
from lettuce import *
@step('I have the string "(.*)"')
def have_the_string(step, string):
world.string = string
@step
def i_put_it_in_upper_case(step):
world.string = world.string.upper()
@step
def see_the_string_is(step, expected):
'''I see the string is "(.*)"'''
assert world.string == expected,
"Got %s" % world.string
Using different webdrivers and remote webdrivers
Saucelabs / BrowserStack