Unraveling The Enigma of Automated Testing
What is Test Automation
Test Automation is the use of software to control the execution of tests and the comparison of actual outcomes with predicted outcomes.
Using software to test business rules
Why do we need Test Automaton
Our System is NOT Orthogonal
Our System is Complex
Orthogonal Design
Non-Orthogonal Design
Craziness of Flying the Chopper
More Craziness
Unit Testing
- Checks to ensure a single component's logic is correct
- EX: I want to test the gas gauge in a car
- I fill the tank with 2.5 gallons; I expect the gauge to read 25% Full
- I empty the tank; I expect the gauge to read empty
- I fill the tank with 5 gallons of water and 5 gallons of gas; I expect the gauge to read 100% full
Integration Testing
- Checks to ensure different components when combined work properly
- EX: I want to test the engine can run
- I fill the tank with 2.5 gallons of gas; I crank the engine, and it runs
- I have an empty tank; I crank the engine it doesn't start
- I fill tank with 5 gallons gas and 5 gallons water; I crank the engine and it conks out
Functional UI Testing
- Browser (Chrome,Firefox, IE) driven checks that verify user usability by running checks on the application or system itself
- EX: I want to check to ensure the car can accelerate from 0-60 in 12 seconds
- I fill the tank with 2.5 gallons of gas, I crank the car, and it runs (Integration tests ensured our car will run)
- I start my stop watch
- I press and hold down the gas pedal
- I watch the speedometer
- when it reaches 60 I stop my stop watch and verify results
Where we are now
Where we will be after DTH
What we are working towards
Unit Test Status
Functional UI Test Status
Q&A
deck
By Butch Mayhew
deck
- 436