Beruflich Dokumente
Kultur Dokumente
Introduction to Test
Automation
Prepared By: R K Singh
Agenda
Brief Introduction
Who am I?
7+ Years of IT
Experience
ISTQB Advanced and CSTE
My Roles
so farCertified
Software Developer, Development Tester,
Test Lead, Trainer-Teaching TDD and
Automation Testing
Advisor-Assesses projects and Tools for Test
Automation
INTRODUCTION OF TESTING
What is Testing: Software testing is the process of
evaluation of a software item to detect differences
between actual and expected output on given input.
Software Testing is the process of assuring that
product which is manufactured by developer is
meeting the user requirement. The motive to
perform testing is to find the bugs and make sure
that they get fixed.
The purposes of testing are:
Quality assurance, Verification and Validation,
To find the bugs before the product is released to
customer.
To improve the quality of the product
To evaluate that the product is according to
requirements.
TYPE OF TESTING
Software Tester
Software Developer
Project Lead/Manager
End User
Pros - Cons
Advantage: Manual testing can be use in both small and big project.
We can easily reduce and add our test case according to project movement.
Easy to learn for new people who enters in manual testing.
Manual testing is more reliable then automated (in many cases automated test
not cover all cases) .
Disadvantage: GUI object size difference and color combination etc is not easy to find out in
manual testing.
Actual load and performance is not possible to cover in manual testing for large
number of users.
Automation testing
Selenium
Test stack.White
Testing Anywhere
WinRunner
LaodRunner
Pros - Cons
Advantages
Easy to cover up all cases in a limited time period.
You can perform different types of testings like load testing,
performance testing using tool.
Automated testing can be performed on different operating systems.
Disadvantages
Purchase a tools and Maintenance.
Automation testing is more expensive work as comparing with manual
testing.
Language wise there are many tools to test various type of software,
means all tools will not support to all software which are developed in
different languages.
Software Development
Life Cycle: There are six
type of SDLC.
Requirement phase
Design phase
Coding (programming)
Testing
Release (Production)
Maintenance (Support)
Requirement Study
Test Planning
Writing Test Cases
Review the Test Cases
Executing the Test Cases
Bug logging
Close or Reopen bugs
continue
Functional testing
Integration testing
Regression testing
System testing
Load testing
Stress testing
Performance testing
User acceptance testing
Black box testing
White box testing
Alpha testing
Beta testing
Test
Case
ID
Test
Inpu Expec
Case
t
ted
Descrip Data Result
tion
Test Remar
Res
ks
ult
Sample of Bug :
Bug Name: Application crash on clicking the SAVE button.
Bug ID: (It will be automatically created by the BUG Tracking tool once you save this
bug)
Area Path: USERS menu > New Users
Severity: High (High/medium/Low)
Priority: High (High/medium/Low)
Assigned to: Developer-X
Reported By: Your Name
Reported On: Date
Reason : Defect
Environment: Windows 2003/SQL Server 2005
Bug detailscontinued
High Priority and Low Severity: Company logo is not properly displayed on
their website.
High Priority and High Severity: Suppose you are doing online shopping and
filled payment information, but After submitting the form, you get a message
like "Order has been cancelled."
Low Priority and High Severity: If we have a typical scenario in which the
application get crashed, but that scenario exists rarely.
Low Priority and Low Severity: There is a mistake like "You have registered
success" instead of successfully, success is written.
RK
Cont..
Selenium is a robust set of tools that supports rapid development of test automation
for web-based applications.
Selenium operations are highly flexible, allowing many options for locating UI
elements and comparing expected test results against actual application behavior.
Selenium Features
Supports Cross Browser Testing. The Selenium tests can be run on multiple browsers.
Allows scripting in several languages like Java, C#, PHP and Python.
Selenium Flavors
Selenium IDE
Selenium Webdrivers
Browsers
Versions
Selenium IDE
FF4.xFF10-x
Only
Record &
Playback
IE 7/8/9
Safari
2/3/4/5
Selenium
Remote
Control
Selenium
Core
Selenium
2/Web driver
API
Browsers
Versions
Selenium IDE
Selenium
Remote
Control
Selenium
Core
Selenium
2/Webdriver
API
Chrome
v 5- v 19
**
Selenium Core is written in Java script so it should work (in theory) on most browsers with
decent Java script support. Some operations are only possible via Selenium Remote Control
because of browser security settings
** Selenium Remote Control server can start any executable, but depending on browser security
settings, there may be technical limitations that would limit certain features.
Opera
8/9/10
Demo Time!!
Lets have a Demo!!