Behavior Driven Development

Behavior Driven Development in Flex – Where we are?

What is Behavior Driven Development (BDD) let’s ask Wikipedia:
“The focus of BDD is the language and interactions used in the process of software development. Behavior-driven developers use their native language in combination with the ubiquitous language of Domain Driven Design to describe the purpose and benefit of their code. This allows the developers to focus on why the code should be created, rather than the technical details, and minimizes translation between the technical language in which the code is written and the domain language spoken by the business, users, stakeholders, project management etc.”

In simple words: some kind of Test Driven Development but test scenario (test unit) comes from business requirements (features) and is written in natural language. BDD is not a TDD alternative, these two tools should be complementary. BDD mainly affects important business functions in the context of the user interface. Can I replace Agile userstory with BDD feature ? Anyone of you tried? Let them share their knowledge.

Go back to the main theme: BDD comes from the Ruby environment and there we have a number of excellent tools such as: RSpec and Cucumber. What about Flex ? While we have many solutions for test automation gui as:

We observe a large gap in the market of powerful tools for Flex BDD. What is our situation today? Google gives us mostly things related to FunFx and Cucumber:

But FunFX (Flex Test Automation based on Ruby) is rather old solution, last home site news is from 7 february 2008. Now more fashionable are FlexMonkey, Selenium, RIATest. What about them ? Last days I have tried to get Cucumber and Selenium Flex API working toghet but I lost time because the results were very poor. There were lot of configuration, unknown errors, hundreds dependencies and thousands of files nothing more.

Do we have any alternatives? Yes, although not quite know whether it is worth attention, I found something that is called Bread & Butter – Behavior Driven Development for Adobe Flex. Description on website is concise and encouraging, changes in the repository are from November 2009. It is alive ? It is worth to try ? I do not know, I will try to contact an author and then, as always, run simple example and share the knowleadge.

Summary
My dream is to see some kind of middleware library, which allows to write BDD features independent to GUI access technology (FlexMonkey, FunFx, Selenium, RIATest, …). Natural language to define features and some kind of metalanguage to write feature steps. If anyone of you knows a better way to get BDD in flex working, I encourage you to share knowledge.

Discussion

4 comments for “Behavior Driven Development in Flex – Where we are?”

  1. […] Read the complete post here Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages. […]

    Posted by Behavior Driven Development in #Flex Where we are? « Geirr Winnem's Blog | January 11, 2010, 5:41 pm
  2. Marcin-

    Thanks for mentioning Bread and Butter. The project got to about 85% completion and was temporarily shelved because I became swamped with projects. The B&B project doesn’t completely replace the other testing frameworks. It’s meant to test individual interfaces outside the context of the application they’re in. It’s like a UI unit test in BDD.

    I’m hoping to start up again soon. If anyone has anything they’d like to contribute (ideas, code, etc) then I’d be happy to try to integrate them.

    Ben Johnson
    Bread & Butter Project Owner
    ben@leafedbox.com

    Posted by Ben Johnson | January 25, 2010, 8:27 pm
  3. Hi Ben,

    Great news, I have no free work hours 🙂 but I already waiting for B&B solution !

    Posted by Marcin Zręda | January 25, 2010, 8:34 pm
  4. […] Behavior Driven Development in Flex – Where we are? – one of my next efforts is to pick an acceptance test tool for my Flex programming. […]

    Posted by Reading List for January 2010 « Coder For Christ | January 30, 2010, 4:12 pm

Post a comment