test automation framework using cucumber bdd overview (part 1)

Download Test Automation Framework using Cucumber BDD overview (part 1)

If you can't read please download the document

Upload: mindfire-solutions

Post on 14-Jun-2015

460 views

Category:

Software


8 download

DESCRIPTION

This seminar is about understanding BDD concepts. This includes overview of test automation framework using Cucumber/Java.

TRANSCRIPT

  • 1. Test automation framework usingCucumber: BDD overviewPart-1 of 3Jayprakash MouryaSQA @Mindfire Solutions

2. Agenda What is BDD/TDD Why to use BDD Cucumber implements BDD Creating the Maven Project Downloading the Maven Dependencies for Cucumber,junit Preparing Features File having test scenarios Writing a step definition Given, When, Then, And, But annotations and usage in feature file Writing Runner Class Passing parameters in Step Functions 3. TDDTest Driven Development 4. TDD in summary First we write a test. Then we write code to make the test pass. Then we find the best possible design forwhat we have - re-factoring (Relying on theexisting tests to keep us from breaking things whilewe are at it) 5. Steps to start TDD Analyze the requirements and write the list of tasks or features Pick a task Brainstorm a list of tests for the task or feature Review the tests list and pick a test Write the test case Run the test case and see it fails to compile Write only enough code that the test case compiles Run the test and see running the code fails Write only enough code to just pass the test Re-factor the production code and eliminate duplication Repeat 6. BDDBehavior Driven Development 7. Why BDD It provides framework for matching the simplicity of thecustomers requests against an actual running application andreporting back what is working and what is not From the developers point of view, it validates that they are notmissing anything at the higher level their unit tests may havemissed. Gherkin is the language that Cucumber understands. It is aBusiness Readable, Domain Specific Language that lets youdescribe softwares behavior without detailing how that behavioris implemented. Reusable, copy & paste 8. What is in here for QA???Let's see....a demo 9. Jars required Junit 4.11 Cucumber-html 0.2.3 Cucumber-core 1.1.8 Cucumber-junit 1.1.8 Cucumber-java 1.1.8 10. Queries...... 11. Thank you!-Reach out to [email protected]: jayprakash.mourya