This workshop provides teams with immersive training on automated functional testing, with an emphasis on best practices. The course utilizes Twist, ThoughtWorks Studios’ functional test automation tool, as a teaching tool. Teams learn how to begin a functional test suite in the early stages of a development project, write tests that are understandable by the whole team, and effectively group and organize large test suites. This course also provides a basic overview of integrating functional testing into the build. All participants will get hands-on practical experience.
Overview
Audience
Software Testers, Quality Assurance Analysts, Business Analysts, Developers
Duration
2 days
Pre-requisite
Agile Fundamentals
Objectives
- Understand the importance of writing tests in domain language
- Understand best practices which make the test suite easy to maintain and modify
- Obtain a basic understanding of Twist and its features through hands-on experience
Course Outline
Introduction & Overview
Introduction to automated functional testing:
- Problems with current testing tools
- Why business and technical users should collaborate
- How Agile Test Automation is different?
- Why ThoughtWorks built Twist
- Introduction to sample application
- Identify 5 tests to automate
Getting Started
What makes automation successful?
- Intent vs. Implementation
- Pros/Cons of Record and Playback
- Write identified tests in Twist in the application’s domain language
- Implement the tests
Writing tests as assets
What makes automation difficult?
- Writing independent tests (Setup/Tear down)
- Extracting high level concepts to reuse in other scenarios (Extract concept)
- Data Driven Testing (Business Rules table and Table Driven Scenarios)
Maintaining and organizing tests
- Tags to organize as a test suite
- Re-factor to cope with application changes
- How to handle test cases which cannot be automated
Integration
- With Ant
- With CI
- With project management tool
Advanced topics
- Spring configuration
- Automation patterns like Page object pattern, domain object pattern
- Quick overview of ATDD
- Common Test Smells
Hands-On Labs
Throughout the workshop, there are hands-on labs to illustrate key concepts.