Test Automation Boot Camp (ICP-ATA) (AA-TABC)


Course Description

High performing organizations use automated testing to achieve greater productivity and reliability. Every change and new feature are instantly checked to see if it meets intended requirements and doesnít break the rest of your systems.

Today every software team faces the challenges of delivering more capabilities on faster timelines with greater reliability.

Whether you associate it with a buzzword like "DevOps" or "Agile" or just call it ìbeing more responsive to the business,î test automation is the key to improving the efficiency, capability, and speed of your development and delivery processes. Yet many teams fear test automation to be challenging, difficult, or impractical. How can you tame the madness and start to achieve the benefits on your schedule and budget?

Learn the lingo of test automation: Selenium, Gherkin, Cucumber, HPQC, Jira, and others. There's an alphabet soup of complex tools that seem beyond your reach. What do they mean? How do they fit together? Which do you need and which can you safely ignore?

Understand how to organize your systems to get the most out of automated testing.

In this test automation training course, you will learn how to improve your development throughout and reliability by replacing slow, boring, and error-prone manual testing with fast, repeatable automated tests. Organize your systems and processes to get the most out of automated testing. Improve system reliability by improving test coverage. Support deployments across many platforms with a single set of reusable tests.

Course Outline

Part 1: Introducing Test Automation

  1. Watch an Automated Test
  2. Requirements
    • Exercise: Identify different requirement types
    • Exercise: Make requirements testable
  3. Testing Types
    • Black-box vs. white-box
    • System testing vs. integration testing vs. unit testing vs. acceptance testing
  4. Application Types
    • Process-driven or data-driven: no "one size fits all"
    • Exercise: Define different kinds of tests for different application types
  5. The Alphabet Soup of Tools and Methods
    • Selenium. Gherkin. Cucumber. HPQC. Jiraóyou hear all of these. What do they mean? How do they fit together? Which do you need and which can you safely ignore?
    • Exercise: Testing facts and fallacies

Part 2: Preparing for Test Automation

  1. Effective Partitioning Schemes
    • Exercise: Structure a system into processes (actor goals), activities, actions
  2. Use Cases and Test Cases
    • Exercise: Create a test case for a single activity from a written use case (happy path)
  3. Behavior-Driven Languages
    • Exercise: Write a test case as a Gherkin scenario
  4. Modeling and Diagramming Techniques
    • Exercise: Construct a UI navigation map for normal and alternate flows
  5. Equivalence Partitioning and Boundary Value Analysis
    • Exercise: Define input value choices and use TAME to construct test alternatives

Part 3: Recording Automated Tests

  1. Automated Test Steps:
    • Pre-checks, Inputs, Events, and Post-Checks
    • Exercise: Write the steps of an automated test
  2. Record and playback a single test
    • Exercise: Record and play back a test in Selenium WebDriver
    • Exercise: Record and play back a test in Ranorex

Part 4: Dissecting Automated Tests

  1. Recorded Test Steps
    • Exercise: Examine recorded steps in Selenium and Ranorex
  2. UI Element Repositories
    • Exercise: Examine the components of a UI page
    • Exercise: Create path expressions to locate page elements

Part 5: Assembling Automated Tests from Modules

  1. Test Suites, Test Cases, and Modules
    • Exercise: Partition a recorded test into reusable modules
  2. Modular Test Development
    • Exercise: Construct test cases from existing modules
    • Exercise: Construct new modules for alternate behaviors

Part 6: Coding Automated Tests

  1. Code always, Code sometimes, or Code never
  2. The Skills Pyramid
  3. Open-source and commercial tools
    • Exercise: Compare tools and team capabilities

Part 7: Exploiting Automated Testing

  1. Test-driven development: test cases as specifications
  2. Data-driven tests
    • Exercise: Define data tables for equivalence partitions and boundary value analysis
  3. Multi-platform and cross-browser testing
    • Exercise: Run test cases on multiple web browsers

Part 8: Enabling Continuous Integration with Test Automation

  1. Regression test suites
  2. Development events trigger test runs
  3. Configure test subsets
    • Exercise: Define a minimal "smoke test" and contrast with a full regression suite
  4. Report test results
    • Exercise: Design a dashboard for quick reporting of test results

Part 9: Course Summary

  1. Quiz: Testing facts and fallacies
  2. Exercise: Plan your own test automation strategy

Course Objectives

  • Identify different requirement types
  • Define different tests for different application types
  • Review the various tools and methods available for test automation
  • Write a test case as a Gherkin scenario
  • Construct modeling and diagramming techniques
  • Write the steps of an automated test
  • Record and playback a test in both Selenium WebDriven and Ranorex
  • Partition a recorded test case into reusable modules
  • Exploit automated testing for data-driven, multi-platform and cross-browser testing
  • Use test automation for implementing continuous integration

Course Prerequisites

Students who have completed an foundational Agile testing course have found it very helpful when completing this course.

Course Information

Length: 2 day

Format: Lecture and Lab

Delivery Method: n/a

Max. Capacity: 16



Schedule

Contact Us


Do you have more questions? We're delighted to assist you!

1-877-797-2799
info@firefly.cloud

Who Should Attend

This class is designed for:

  • Software Developers and Programmers
  • Business Analysts
  • Quality Assurance Professionals
  • Software Testers
  • Product Owners
  • Project Managers
  • IT Managers
  • Software Engineers

This course is tool agnostic, but you will do a review of the options available to you in the market.