12

Automation testing

Embed Size (px)

Citation preview

Page 1: Automation testing
Page 2: Automation testing

Romexsoft - Quick Facts

● started in 2004

● more than 80 successfully accomplished projects

● based in Lviv, number one IT outsourcing center in Ukraine

● Agile friendly company

● our services

○ Custom software development

■ back end

■ web

■ mobile

○ DevOps

○ Quality Assurance

○ User experience

○ Technical consulting

Page 3: Automation testing

BelievesPeople and reputation are our major accomplishments. Competencies, out of the box thinking, positive attitude to people and life, as well as ethics of characters, are a keystone of mutual success.It primarily stands out for its team that likes working creatively, strives to gain new knowledge, hones the skills, and introduces changes into the whole company operation.We aim to build an Agile company with unique cultural environment, a place where product owners, teams and individuals produce superb products & services through commitment and passion to software development.Through hiring the most qualified engineers, investing in their professional development, continuously challenging them, and always self-improving, we will excel both as an employer and a trusted vendor.

Page 4: Automation testing

Behavior-driven development (BDD) BDD Approach

● It is an executable documentation● Can be used by all stakeholders involved in a project● Clears out the misunderstandings between customers, domain experts, developers, QA, etc.

BDD Meets Customer’s / User’s Expectation:● Use Cases / User Stories

o Series of acceptance criteria (scenarios)o Each scenario has givens, events and outcomes (Given/When/Then)

● Behaviouro Expressed as a test method and implemented by developer/automation engineero It defines what the application should / should not do

NOTE: Unit Testing Meets Developers Expectations

Page 5: Automation testing

BDD Process & flow in AT

Customer

QADomain Expert AT Engeneer

Continious Integration

Exercise expectationsStories matches to Behaviour matches to test classes

Page 6: Automation testing

BDD - GIVEN, WHEN, THEN

Page 7: Automation testing

Feature / User Story: Search by keyword

In order to find items that I would like to purchase

As a potential buyer

I want to be able to search for items

containing certain words

Scenario Outline: Should list items related to a specified keyword Given I want to buy an HD camera When I search for items containing 'HD' Then I should only see items related to 'HD'Scenarios:| Article | Keyword || Electronics | HD || Electronics | Camera || Wine | Red |

BDD - User Story & Scenario (QA/AT)

Page 8: Automation testing

public class SearchByKeywordStepDefinitions { @Steps BuyerSteps buyer;

@Given("I want to buy (.*)") public void buyerWantsToBuy(String article) { buyer.opens_eshop_home_page(article); }

@When("I search for items containing '(.*)'") public void searchByKeyword(String keyword) { buyer.searches_for_items_containing(keyword); }

@Then("I should only see items related to '(.*)'") public void resultsForACategoryAndKeywordInARegion(String keyword) { buyer.should_see_items_related_to(keyword); }}

BDD - Test Class

Page 9: Automation testing

BDD - Reports

Page 10: Automation testing

BDD - Reports

Page 11: Automation testing

ReferencesSelenium WebDriverhttp://www.seleniumhq.org/projects/webdriver/Web Browser Automation Framework

Appiumhttp://appium.io/Appium is an open source test automation framework for use with native, hybrid and mobile web apps. It drives iOS and Android apps using the WebDriver protocol.

Cucumberhttps://cucumber.io/Cucumber BDD framework lets software development teams describe how software should behave in plain text.

Serenity BDD (previously known as “Thucydides”)http://www.thucydides.info/#/Effective automated acceptance tests, and use these acceptance tests to produce world-class test reports and living documentation

Sauce Labshttps://saucelabs.com/Automated testing in the cloud for CI.Selenium testing, mobile testing, JS unit testing on over 500 OS/browser platforms.

Page 12: Automation testing

Questions

?