BDD :-Behavior Driven Development and Testing

Behavior Driven Development
Behavior Driven testing is an extension of TDD. Like in TDD in BDD also we write tests first and the add application code. The major difference that we get to see here are
·         Tests are written in plain descriptive English type grammar
·         Tests are explained as behavior of application and are more user focused
·         Using examples to clarify requirements
This difference brings in the need to have a language which can define, in an understandable format.
Features of BDD
1.    Shifting from thinking in “tests” to thinking in “behavior”
2.    Collaboration between Business stakeholders, Business Analysts, QA Team and developers
3.    Ubiquitous language, it is easy to describe
4.    Driven by Business Value
5.    Extends Test Driven Development (TDD) by utilizing natural language that non technical stakeholders can understand
6.    BDD frameworks such as Cucumber or JBehave are an enabler, acting a “bridge” between Business & Technical Language

BDD is popular and can be utilised for Unit level test cases and for UI level test cases. Tools like RSpec (for Ruby) or in .NET something like MSpec or SpecUnit is popular for Unit Testing following BDD approach.  Alternatively, you can write BDD-style specifications about UI interactions. Assuming you’re building a web application, you’ll probably use a browser automation library like WatiR/WatiN or Selenium, and script it either using one of the frameworks I just mentioned, or a given/when/then tool such as Cucumber (for Ruby) or SpecFlow (for .NET).

Comments

Post a Comment

Popular posts from this blog

Handling Dynamic Web Tables Using Selenium WebDriver

Verify Specific Position of an Element

Read it out for TESTNG before going for an iterview