0% found this document useful (0 votes)
380 views

Automation Testing - General Presentation

This document discusses automation testing. It defines automation testing as executing test scripts in a controlled manner to compare expected and actual results. The document outlines the benefits of automation testing such as reduced time and costs compared to manual testing. It also discusses different types of automation testing including unit, integration, and acceptance testing. Additionally, it provides examples of automation testing tools and frameworks as well as the benefits of test-driven development and behavior-driven development.

Uploaded by

Paula
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
380 views

Automation Testing - General Presentation

This document discusses automation testing. It defines automation testing as executing test scripts in a controlled manner to compare expected and actual results. The document outlines the benefits of automation testing such as reduced time and costs compared to manual testing. It also discusses different types of automation testing including unit, integration, and acceptance testing. Additionally, it provides examples of automation testing tools and frameworks as well as the benefits of test-driven development and behavior-driven development.

Uploaded by

Paula
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 16

Automation Testing

Radu Tighineanu
06.06.2014
Agenda

• What is Automation testing?


• General things about automation testing
• Testing types
• What to automate and not
• Automation process
• Automation testing – on areas like…
• Automation testing – Tools
• How to choose an automation testing tool
• What is automation testing framework
• Automation testing framework types
• Benefits of automation testing
• Further reading
2
What is Automation testing?

•Automation Testing is a process where


software or an Automation Tool is used to
execute test scripts in a controlled and desired
manner to compare the expected result with
the actual result.

•General - automating a manual process which


is already in place in the testing process.
IN YOUR ZONE 3
General things about automation testing

• Goal is to reduce number of test cases that are manually ran


• Increase ROI(rate of investment)
• Require programming skills
• Record and playback tools can be used to obtain automated scripts
• In automation testing no human intervention is needed
• Benefits against manual testing(time and cost, parallelization, error prone
and boring, increase test coverage, difficulties on running in multi lingual
sites, regression pack and smoke tests can be easy generated)

IN YOUR ZONE 4
Testing types

Testing

White-Box Black-Box
Static testing

Informal Technical Static code


Walkthrough Inspection
Reviews Reviews Review

Dynamic
testing

Integration System Acceptance


Unit Testing
Testing Testing Testing

TDD BDD

IN YOUR ZONE
What to automate and not

 High risk and business critical test cases


 Test cases which are time consuming
 Test cases which are tedious and difficult to perform manually
 Test cases which executes repeatedly with common functionalities
 Scenarios with large amount of data and multiple calculations
 Business components which are reused

Will not be included into automation pack

o Test case which requirements changes frequently


o Those new test cases which were not executed manually, at leas once
o Ad-hoc tests
o Time required to automate is greater than one required to execute manually and benefit is small

IN YOUR ZONE
Automation process

Tool selection Scope of Design and Test execution


implementation
Test report
• Depends on automation • Execute through
• Framework design automation tool • As a result
the • Functional • In and out of scope
technology of • End-to-end items to automate
• Use test of each test
• Schedule and
management execution
SUT is built on • Load testing tool which will
timeline of
scripting and invoke
execution automation
• Generate tool(CI)
automated scripts • Maintenance/im
as deliverables provements of
existing test
scripts

IN YOUR ZONE
Automation testing – on areas like…

• Desktop applications(GUI testing)

• Mobile testing

• Web testing

IN YOUR ZONE
Automation testing - Tools

• Selenium

• Watir

• Sahi

• Soap UI

• Sikuli

• AutoIt

• EggPlant

• HP Quick Test Pro

• Robotium

• Jmeter

• Junit, Nunit

IN YOUR ZONE
How to choose an automation testing tool

• Ease of use

• Scripting Language Used

• Types of test supported - including functional, test management, mobile

• Minimize training cost of selected tools

• Easy to debug the automation software scripts

• Testing of Database

• Object identification

• Image Testing

• Extensive test reports and results

• Support for multiple testing frameworks

IN YOUR ZONE
What is automation testing framework

• A framework is set of automation guidelines

• Integrates function libraries, object details, test data and different reusable modules

• Main advantage is low cost of maintenance

• Improve test structure

• Improve re-usability

• Maintain consistency of testing

• Different set of test data can be used to run tests

• Non technical testers can manage test scripts

• Training time should be reduced for new members

• Capable of executing test script on SUT

• Able to generate test results when test script finishes execution

IN YOUR ZONE
Automation testing frameworks types:

• Linear(procedural code – generated by record and playback tools)

• Structured(use of control structures – conditions and statements) as modules

• Data-driven(test data and expected results are kept separate from test script logic)

• Keyword-driven(uses keywords to symbolize a functionality to be tested)

• Hybrid(combinations of the above)

IN YOUR ZONE
TDD

• TDD = is a software development process that relies on the repetition of a very short development cycle: first
the developer writes an (initially failing) automated test case that defines a desired improvement or new
function, then produces the minimum amount of code to pass that test, and finally refactors the new code to
acceptable standards.

IN YOUR ZONE
BDD

• BDD = combines the general techniques and principles of TDD with ideas from domain-driven design and
object-oriented analysis and design to provide software developers and business analysts with shared tools
and a shared process to collaborate on software development

Story: Returns go to stock


• Example of feature file:
In order to keep track of stock
As a store owner
I want to add items back to stock when they're
returned

Scenario 1: Refunded items should be returned to


stock
Given a customer previously bought a black sweater
from me
And I currently have three black sweaters left in
stock
When he returns the sweater for a refund
Then I should have four black sweaters in stock
IN YOUR ZONE
Benefits of automation testing

•Saves Time and Cost


•Ensure Consistency
•Increases Efficiency
•70% faster than the manual testing
•Re-usable test scripts
•Early time to market
•Human Intervention is not required while execution
•Wider test coverage of application features
IN YOUR ZONE
Further reading

• http://en.wikipedia.org/wiki/Test_automation
• http://www.guru99.com/software-testing.html
• http://en.wikipedia.org/wiki/Behavior-driven_development#Principles_of_BDD
• http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#Java
• http://www.tutorialspoint.com/software_testing/testing_types.htm
• http://en.wikipedia.org/wiki/Behavior-driven_development
• http://en.wikipedia.org/wiki/Test-driven_development

IN YOUR ZONE 16

You might also like