Presentation is loading. Please wait.

Presentation is loading. Please wait.

Advantages OF BDD Testing

Similar presentations


Presentation on theme: "Advantages OF BDD Testing"— Presentation transcript:

1 Advantages OF BDD Testing
Preeti Khandokar- Test Manager Datamatics Global Solutions Ltd

2 Abstract Purpose of this white paper
Bring out the best practices of testing that Datamatics follows in Agile testing environment Overcome QA challenges around behaviour driven development and associated testing Key points addressed in this Deck: BDD Testing importance BDD Implementation BDD in Application Deliver? Different Tools to implement BDD Processes

3 Introduction Behaviour Driven Development (BDD) is a product improvement process which advanced out of many sets of Agile practices & Test Driven Development (TDD) BDD helps in beating a portion of the difficulties which teams’ experience with standard Agile methodologies BDD empowers better coordinated effort over all partners i.e. Clients, Developer’s and QA Team members BDD practice QA is an ongoing process with User Acceptance criteria which makes it the most appropriate practice within Agile

4 Problem Statement Requirements might be misunderstood by each of the project team members. Based on this incorrect understanding, a faulty or buggy product is developed It’s expected that the first step in every project is a discussion about the features, and behaviours of the software to be built Many teams using Scrum and other agile methods suffer following problems. - Where to begin - What is in and out of scope in testing - The amount to test in one go - What will be the test name? - How to analyse failed test cases

5 Solution Why BDD BDD serves in providing better collaboration between Business Analysts (BAs), Developers, Testers, Customers, and end client What Is BDD BDD is referred to as Specification by Example and it practices TDD Developers understands the responsibility of the method he is about to implement Benefits of BDD Strong Team Communication Better Team Understanding Better Requirement Understanding Better Build Quality Ensures Automation at early stage of development

6 BDD Process BDD Process Flow Behavior Driven Development enables QA’s to create test scripts from both the developers' and the end client viewpoint. End client define acceptance criteria which should pass in a given iteration These acceptance criteria enforces developers to write the application code to get the current test step to pass, before moving on to the next step This process gives a sense of gratification to developers every time a step execution passes By following this process Developers know with surety, which specification work and are bug free

7 BDD Framework Behaviour-Driven Development uses simple domain-specific scripting language Domain Specific Language focuses on a specific programming prerequisite It is implemented by converting the domain-specific statements into executable, automated tests BDD tests use as live documentation of application behaviour and are maintained as extensive and reusable tests. There are many Integration testing frameworks that can be used with BDD Cucumber supports BDD framework It offers a way to write tests that anybody can understand, regardless of their technical knowledge. SpecFlow also supports BDD framework which is based on .NET Platform. SpecFlow is an source tool and its source code is hosted on GitHub. Benefits of BDD with SpecFlow As compared to manual testing it reduces 40-80% of test execution time BDD Feature file can be easily understood by anyone It creates easy and detail Test execution report Selenium, Test Complete and QTP can be integrated with SpecFlow easily It supports multiple languages

8 BDD Structure And Code Behind
BDD uses “Given/When/Then” structure to explain specification • Given: Some initial Condition given by end client (e.g. Given the user has Application Url and enters the Username/ Password). • When: Expected action occurs in application (e.g. When the user presses the Login Button). • Then: Expected outcome of the action (e.g. Then I expect to see Application Home Page). Automation QA translates each step into a method, which is used to implement its Given/When/Then step The entire scenario is tested by running the corresponding methods step by step

9 BDD Team Roles Developer Developer translates user story scenario into a function which is used to implement the steps into given in acceptance criteria Business Users Business Users are domain experts and understands application flows from a user’s point of view. This role can be shared with product owner and business analyst Test Automation QA’s Test Automation QA’s are responsible for implementing each scenario using the BDD framework, according to the user stories that were created by the business users

10 How we do it at Datamatics?
Our Focus at Datamatics, is to accelerate software testing process and deliver high quality products using BDD Test automation framework. Spec Flow or Cucumber tool converts the test scenario into steps which is a definition which acts as binder between test scripts and test scenarios. We have implemented well structured test framework to ensure test scenarios are kept separated from the interaction code to reduce the possibility of duplication of code This ensures test scenarios can reuse common code which reduces the QA’s test automation efforts In other words simple change in product development requires only small changes to the test automation scripts. Our Solution facilitates introduction of automation in early stages of application development

11 Conclusion The key is to achieve high quality product and test automation in the same sprint. Our solution approach is used to reduce the complexity of test automation and making it more useful for end client. It provides early and continuous feedback to the agile application development. It leads automation at every level to achieve rapid development. It supports early automation and early life cycle validation and single-click generation and execution of automation scripts. By developing test automation at an early stage we have achieved higher quality product at every stage of product development. It reduces percent effort for automated test script generation over manual testing. It ensures high defect detection rates (95-98%) due to high test coverage.

12 Author Biography Test Manager Preeti Khandokar
Datamatics Global Solutions Ltd. Preeti is Test Manager at DGSL. She has over 11 years of IT experience out of which 10 years are into software testing. She has diversified experience into testing which includes Test Management, SOA/Middleware testing, Agile Test Automation, Implementing solutions for DevOps testing, Web Service testing, Mobile testing. Prior to Datamatics he has worked with companies like Hitachi Consulting, Capgemini and Reliance General Insurance where she has handled multiple roles of Testing Presales, Test Manager, Test Architect, and Automation Tester. She has completed her BE-IT and CDAC. She has expertise in handling onshore and offshore team.

13 Thank You!!!


Download ppt "Advantages OF BDD Testing"

Similar presentations


Ads by Google