Automation testing

  • View
    52

  • Download
    2

Embed Size (px)

Text of Automation testing

  1. 1. 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
  2. 2. Believes People 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.
  3. 3. 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 Customers / Users Expectation: Use Cases / User Stories o Series of acceptance criteria (scenarios) o Each scenario has givens, events and outcomes (Given/When/Then) Behaviour o Expressed as a test method and implemented by developer/automation engineer o It defines what the application should / should not do NOTE: Unit Testing Meets Developers Expectations
  4. 4. BDD Process & flow in AT Customer QADomain Expert AT Engeneer Continious Integration Exercise expectationsStories matches to Behaviour matches to test classes
  5. 5. BDD - GIVEN, WHEN, THEN
  6. 6. 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)
  7. 7. 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
  8. 8. BDD - Reports
  9. 9. BDD - Reports
  10. 10. References Selenium WebDriver http://www.seleniumhq.org/projects/webdriver/ Web Browser Automation Framework Appium http://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. Cucumber https://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 Labs https://saucelabs.com/ Automated testing in the cloud for CI. Selenium testing, mobile testing, JS unit testing on over 500 OS/browser platforms.
  11. 11. Questions ?