{"id":83,"date":"2019-06-17T19:25:50","date_gmt":"2019-06-17T19:25:50","guid":{"rendered":"https:\/\/www.bddtesting.com\/?page_id=83"},"modified":"2019-06-17T19:25:50","modified_gmt":"2019-06-17T19:25:50","slug":"next-generation-bdd-from-automated-web-tests-to-automated-web-acceptance-testing","status":"publish","type":"page","link":"https:\/\/www.bddtesting.com\/next-generation-bdd-from-automated-web-tests-to-automated-web-acceptance-testing\/","title":{"rendered":"Next-generation BDD: From Automated Web Tests to Automated Web Acceptance Testing"},"content":{"rendered":"\n

Last year, our Gumtree Australia<\/a> team started to use behavior-driven development in our agile development process. Initially, we searched for an open-source BDD framework to implement for BDD testing. Since we work on a web application, we wanted our automated BDD tests to exercise the application as a customer view, via a web interface. Of course, many web testing libraries do just that, including open-source tools such as Selenium<\/a> and WebDriver<\/a> (Selenium 2). However, we discovered that no existing BDD framework supports web automation testing directly.<\/p>\n\n\n\n

We decided to simply integrate the open-source BDD tool JBehave<\/a> with Selenium, but soon learned that this solution doesn\u2019t completely fulfill the potential of automated BDD tests. It can\u2019t drive the project development and documentation processes as much as we expected.<\/p>\n\n\n\n

Different stakeholders need to view BDD tests at different levels. For instance, QA needs results to show how the application behaved under test. Upper managers are not so interested in the finer details, but rather want to see the number and complexity of the features defined and implemented so far, and if the project is still on track.<\/p>\n\n\n\n

We needed a testing framework that could let us express and report on BDD tests at different levels, manage the stories and their scenarios effectively, and then drill down into the details as required. And so we started to develop a product that matches our needs. We named this product the Behavior Automation Framework (Beaf) and designed it to make the practice of behavior-driven development easier. Based on JBehave as well as more traditional tools like TestNg<\/a>, Beaf includes a host of features to simplify writing automated BDD tests and interpreting the results.<\/p>\n\n\n\n

\"beaf-01\"\/<\/a><\/figure>\n\n\n\n

Beaf\u2019s extensions and utilities improve web testing on WebDriver\/Selenium2 in four ways:<\/p>\n\n\n\n