Learn to improve efficiency and speed of your development and delivery processes.
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.
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.
Completing this course makes attendees eligible for the ICAgile Certified Professional in Agile Test Automation (ICP-ATA) Certification.
- 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
Part 1: Introducing Test Automation
· Watch an Automated Test
o Exercise: Identify different requirement types
o Exercise: Make requirements testable
· Testing Types
o Black-box vs. white-box
o System testing vs. integration testing vs. unit testing vs. acceptance testing
· Application Types
o Process-driven or data-driven: no "one size fits all"
o Exercise: Define different kinds of tests for different application types
· The Alphabet Soup of Tools and Methods
o 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?
o Exercise: Testing facts and fallacies
Part 2: Preparing for Test Automation
· Effective Partitioning Schemes
o Exercise: Structure a system into processes (actor goals), activities, actions
· Use Cases and Test Cases
o Exercise: Create a test case for a single activity from a written use case (happy path)
· Behavior-Driven Languages
o Exercise: Write a test case as a Gherkin scenario
· Modeling and Diagramming Techniques
o Exercise: Construct a UI navigation map for normal and alternate flows
· Equivalence Partitioning and Boundary Value Analysis
o Exercise: Define input value choices and use TAME to construct test alternatives
Part 3: Recording Automated Tests
· Automated Test Steps:
o Pre-checks, Inputs, Events, and Post-Checks
o Exercise: Write the steps of an automated test
· Record and play back a single test
o Exercise: Record and play back a test in Selenium WebDriver
o Exercise: Record and play back a test in Ranorex
Part 4: Dissecting Automated Tests
· Recorded Test Steps
o Exercise: Examine recorded steps in Selenium and Ranorex
· UI Element Repositories
o Exercise: Examine the components of a UI page
o Exercise: Create path expressions to locate page elements
Part 5: Assembling Automated Tests from Modules
· Test Suites, Test Cases, and Modules
o Exercise: Partition a recorded test into reusable modules
· Modular Test Development
o Exercise: Construct test cases from existing modules
o Exercise: Construct new modules for alternate behaviors
Part 6: Coding Automated Tests
· Code always, Code sometimes, or Code never
· The Skills Pyramid
· Open-source and commercial tools
o Exercise: Compare tools and team capabilities
Part 7: Exploiting Automated Testing
· Test-driven development: test cases as specifications
· Data-driven tests
o Exercise: Define data tables for equivalence partitions and boundary value analysis
· Multi-platform and cross-browser testing
o Exercise: Run test cases on multiple web browsers
Part 8: Enabling Continuous Integration with Test Automation
· Regression test suites
· Development events trigger test runs
· Configure test subsets
o Exercise: Define a minimal "smoke test" and contrast with a full regression suite
· Report test results
o Exercise: Design a dashboard for quick reporting of test results
Part 9: Course Summary
· Quiz: Testing facts and fallacies
· Exercise: Plan your own test automation strategy
Substitution & Cancellation Policy:
You may cancel or reschedule up to 21 days prior to the start date of the class at no penalty. For any cancellation or reschedule requests within 21 days, the full course tuition is still due and not eligible for refund. Any paid tuition will be credited towards a future class and must be used within 12 months.
*Partner delivered courses may be subject to different cancellation terms
Delivered by ASPE, ICAgile Member Organization. The International Consortium for Agile has worked with experts around the world to develop an education roadmap of training and certification
for all specialties involved in Agile development.
This course, delivered by ASPE, ICAgile Member Organization has been approved and earns all students the Certified ICAgile Professional designation upon completion of the course.