The TAME Course

Three days | 12noon - 5pm Eastern / 9am - 2pm Pacific Time

Get hands-on experience in the entire TAME process. Learn to design tests for single functions and more complex sequences. Define data values and create test oracles. Write detailed directions to quickly produce scenarios for review.

Automate your tests by finding instructions and selector expressions. Run your automated tests on different platforms and sizes, all without complex coding. See how to enhance test suites in response to bugs, user stories, and enhancement requests.

Outline

Why Automate Testing?

  • See how testing has become a hot topic in recent years with the growth of agile methods, automation, and DevOps.
  • Learn why automated testing is a key part of an agile incremental development process.
  • See how the short cycle times introduced by agile processes require faster test turnaround.
  • Understand the difficulties in building tests one by one.

Inputs and Results

  • Partition a system into processes, processes into activities, and activities into individual testable functions.
  • Identify the function's inputs. Partition the inputs into different choices that yield different results.
  • Identify different expected results. Define which input choices lead to which results.
  • Use TAME to generate test cases from the input and results.

Conditions

  • Identify preconditions that cause different results for the same inputs.
  • Partition overlapping properties into distinct conditions

Values

  • Define actual values for inputs as combinations of input and environment choices.
  • Use spreadsheet formulas to define both input and expected result values.
  • Understand how value choices can originate from both black-box and glass-box tests.
  • Apply principles of equivalence partitioning and boundary value analysis.
  • Use spreadsheet formulas to create random values so each test run is a little different.

Properties

  • Partition inputs into distinct overlapping properties
  • Separate business rules from the form of the input
  • Apply format properties to test the same input values in different forms (e.g. "1000" vs. "1,000" vs. "1,000").

Recording Web Tests with Selenium IDE

  • Learn the basic structure of an automated UI test.
  • Build a few test cases using the Selenium IDE record/playback tool.
  • Learn how to include checks (verifications/assertions) into a test.

Automation Instructions

  • Identify instructions and selector expressions in a Selenium IDE test.
  • Add a Run tab and insert instructions for Selenium automation.
  • Run tests on different browsers and sizes.
  • Examine log files and develop strategies for fixing errors.

Sequences and State Models

  • Combine several individual steps into a complete test sequence.
  • Run sequence tests.
  • Use cross-sheet references to share definitions and instructions across multiple test workbooks.

Advanced Automation Issues

  • Use the TAME Runner to run Selenium IDE recorded tests. Learn how to add comments to Selenium IDE tests to make the run logs easier to read.
  • Examine instructions and selector expressions to determine an application's amenability to automation. Identify recorded selector expressions that can be fragile in the face of application changes.
  • Change selector expressions to make fragile path expressions more resilient to application changes.

Multi-Platform Testing

  • Learn why it is important to test on many different platforms.
  • Define and identify the platforms you’ll need to test.
  • See the complexities in automating cross-browser tests.
  • Understand how virtualization (virtual machines and containers) facilitate multi-platform testing.

Course Summary

  • Review how test automation supports agile, incremental development.
  • Review the automation tools presented in the class and discuss other tools available to you.
  • Plan your next steps.

For more information, contact us to discuss your particular training needs.