Automated Functional Testing Using Twist

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.