2. Understanding Automation Testing To Start With??
11/20/15
Traditionally performed with tools that mimic manual test flows
using a record and play-back system similar to Marco recording
in excel
How does this work with Tool:-
•Capture manual test flow, using record capability.
•While recording, captures object on which actions are
performed and stores them in an object repository.
•On playback objects on page checked against OR for match.
•Tools then generates user actions on objects (e.g. button click)
to replicate test flow.
•Test scripts can be customized to use multiple data sets for the
same test flow or to modify test flow.
3. Problems With This Approach & A Solution Of
Course….
11/20/15
This Test Automation Approach has for the most part been a failure.
Why?
•Automation tools have been oversold. They have been given capabilities that they do
not necessarily posses. E.g. demonstrate capabilities on one system and believe that
would extend to all systems.
•Record and Playback looks great but performs poorly in practice.
•Work great for small projects but scales poorly.
•Do not port well from one project to another.
•Hard to customize
The Solution Of Course:-
Is To build a layer over existing automation tools (An Automation Framework Layer).
•Tools still used (in the general case) to capture object properties
•Framework Provides a library of functions that hides underlying complexity from users.
•Modular design makes it easy to extend
•User friendly interface and reporting options
•Uses Global parameters and variables to compensate for changes in application.
4. Different Ways to Design A Framework
11/20/15
I Believe With And
There Are:
•Test Script Modularity Framework OR Page-Object Model
Framework
•Data-Driven Automation Frameworks
•Keyword-Driven Automation Framework
•Hybrid Test Automation Framework
•Behaviour Driven Development.
All others are just derived versions and given different names.
5. POC And Selecting A Right Framework…
11/20/15
The major problem we usually have :-
1.Coverage 2. Maintaining Scripts
3.Reuse 4. Record/Playback
5. A different views of automation testing.
Some record/playback scripts Using A
Tool
6. How A Keyword Automation Framework Layer (Diagrammatically)
Should Be?
11/20/15
7. The Good And The Bad Of This Approach…
11/20/15
The Good
•Much easier to extend to larger projects.
•Designed to be highly modular, so changes in the application are
easier to deal with.
•Highly customizable, easy to modify across projects.
•Reduced maintenance costs.
•Isolates technical nitty-gritty of test case scripting from test
execution.
The Bad
•Adds additional overhead of testers having to understand the
framework
•Performs poorly when application changes often as test scripts must
be continually modified
•Often sold as a panacea, Automation testing however takes time and
effort no matter how you do it.
8. What Are We Looking AT???
11/20/15
YES.. We Have One Working
Automation Framework In Place To
Help Us With Out Testing Cycle.
12. Additional Capability
11/20/15
This framework has data driven capability which can be used for
certain test cases which may need multiple Datasets.
So we now have two hybrid frameworks in one at our disposal..
1.Keyword Driven + Data Driven = Hybrid Framework
2.Data Driven + Page Object Model = Hybrid Framework.
13. Reporting..
11/20/15
We have two level of reporting integrated with the framework.
1.An Technical Logger Which may identify any failures at
granular level and can assist in troubleshooting.
2.Reports In HTML Format with capabilities For:-
• Provides two types of reports summary and detailed report
• The summary report provides details of execution duration, test start
time and end time
• Screenshot captured of each execution step
• The detailed reports describe exceptional cases handled, steps
passed, and steps failed.
• Video Recording of the execution.
• Good Graphical View At Start.
14. Why Need A Technical Logger – For Trouble Shooting
20/11/15
22. More To Automation Framework
We have more framework development to do notably:-
-Extending framework support for more web objects.
-Extending framework support for browsers and more OS.
-Framework Support for web testing on tablet with existing
scripts using Appium
-Performance support via Selenium and Visual Studio..
-Jenkins integration of tools.
-And many more…
20/11/15