manual-testing-1-50
manual-testing-1-50
TESTING
It helps to identify the defects and provide quality product to end user.
It will happen D (Development) to D (Delivery to End User).
The Product/Application/System will be used in customer point of view
in all positive and negative perception.
This testing will be done by TESTERS.
A Defect is an Undesirable State
Undesirable
State
2. QUALITY
What is Quality?
• Quality is defined as meeting the customer’s requirements for the first time and
every time.
• Quality is much more than the absence of defects, reliability, efficiency, easy
to use, within budget.
• Producer’s view – Quality of product meets requirements.
• Customer’s view – Quality of product “fit for use”/ meets customer’s needs.
Why Quality?
• Quality is the important factor affecting an organization’s long term performance.
• Quality improves productivity and competitiveness in any organization.
How you achieve quality?
Right the first time - if anything is done perfectly in the first time itself then we can say
that quality is achieved. When the following thing are done then quality can be achieved
Effectiveness - Doing the Right things
Efficiency - Doing the things right
Quality Testing
Verification + Validation
Quality Control
Measures the quality of the product.
Validation is the process of evaluating the final product to check whether the software meets
the business needs.
• QC makes sure that we developed the product right.
• It is product oriented.
• Defect detection based.
• This will happen after the development
• Eg: Testing (Validation)
Software Testing
RESULT
TESTER
Tool Testing
APPLICATION
TOOL Result
TESTER
Producer Gap
Producer View of Quality as Delivered
Start
Customer Gap
SDLC
• It stands for Software Development Lifecycle.
• It is the entire process of formal, logical steps taken to develop a software product.
• It describes the activities that take place at each stage of software development process.
SDLC PHASES
Requirement collection:
In this phase with an interaction of Clint BA will collect Clint requirement. Collected information will be
documented as BRS (or) customer requirement specifications (CRS).
BRS document describe Clint business needs, like who can access the application and what type
of services application has to provide to the user. After preparation of BRS doc Business analyst will perform
feasibility study which is called pre project activity. In feasibility testing they verify follow8ing factors to check
whether the project (or) product is acceptable or not.
[Prepared By: Kamal Subramani] Page 5
In feasibility study they verify following factors.
1) Finance feasibility.
2) Time feasibility.
3) Ability to accept in terms of technology, environment, Human resources and requirements are reliable
or not. If project is acceptable BA intimate to that lint with help of “statement of work” and “service
level agreement”.
Requirement analysis (or) System analysis:
In this phase system analyst will analyze Clint business needs in BRS document based on that he
prepares detailed document SRS.
SRS contains two types of sub document
1. FRS (Functional requirement spec’s): It describes detailed functionality of the system in order to
cover Clint document to understand functionality of application.
2. NFRS (Non FRS): It describes about Clint expectations like performance factors, security, compatibility
etc.
Design:
In this phase design architect will prepare following documents after analyzing SRS.
1. GUI design doc:
It contains dummy screens of application. A sample application without functionality like
prototypes is helpful to know the future implementation of application and as tester point of view
it is easy to understand application functionality.
2. Data base design doc:
This document describe about data base structure like tables, rules between those tables.
3. Application design document (or) technical design document:
After architecture of application design architect will prepare two sub docs in TDD.
Two doc’s contains in TDD are
1. High level design doc describes no. of modules required for an application and relation between those
modules.
Modularization: It is a process of splitting into set of module for easy construction of application.
Module: Means set of similar requirements grouped together.
2. Low level design document: For each module there will in depend low level design document where it
describes logic of the each module in order to develop programs.
Coding:
In this phase developer will write the program in order to develop application based on design
documents. In general for window base application they use programming languages like java, dotnet, etc. For
web based application they use scripting languages PHP, Perl etc.
Testing:
After writing the program development team will perform unit and integration testing using white box
testing techniques.
Testing engineers validate application as per Clint requirements and expectations in system testing where
they use BBT techniques. After system testing to Clint feedback will perform UAT.
Implementation & Maintenance
Includes implementation of changes that software might undergo over a period of time, or
implementation of new requirements after the software is deployed at the customer location. The
[Prepared By: Kamal Subramani] Page 6
maintenance phase also includes handling the residual errors that may exist in the software even after the
testing phase. This phase also monitors system performance, rectifies bugs and requested changes are made.
Maintenance, often turned support, is a crucial activity for linking the experiences of users/customers with the
product delivery organization. We consider perspectives on high tech maintenance from bug fixing through to
design focused activities.
Requirement
Analysis
Optimal Test Strategy
Risk Test
Analysis Strategy
64% 36%
(Development & Maintenance) (Testing)
3. Test Responsibility Matrix
PM can select reasonable test to be conducted in current Project / Product.
S/W Testing Yes/No Comments
Functional Testing Yes -
Usability Testing Yes
Compatibility Testing Yes
H/W Configuration Yes
Performance Testing No Required Test, Resources not available
Security Testing No Required Test, But no Skils
Multi - Language No No Requirement
4. Roles and Responsibilities
Jobs for Testing Team & Responsibilities of each job.
Roles Responsibilities
Test Lead Prepare Test Plans
Review Test Cases
Involving in Defect Tracking
Senior Tester (Quality Analyst) Prepare Test Cases
Involving in Defect Reporting
Junior Tester (Quality Controller) Executing Test Cases
Prepare Defect Reporting
Testers Programmers
8. Testing Measurements and Metrics
PM can define a set of measurements and metrics to be followed by Testers during
testing.
Example:
25 to 30 Test cases documents preparation per day
15 to 20 Test cases documents execution per day
5 Defects detection per day
8. Test Management
Test Management is a part of configuration Management. In general PM is
responsible to provide location to Developers and Testers to save their deliverables for
future reference.
10. Risk Assumptions
PM can guess challenges will come during testing and identify the solutions to
overcome those challenges
Examples:
Risk 1: Lack of time
Risk 2: Lack of Resources
Risk 3: Lack of Documentation
Risk 4: Delays in Delivery
Risk 5: Lack of Skills
Risk 6: Lack of Seriousness to developers
Risk 7: Lack of communication in between developers and testers
Risk 8: Sudden changes in customer requirements.
11. Training Needs
PM can identify need for training to tester for current project / product, Most of the
times PM can skip training for budget control.
TEST PLAN
After completion of Team Formation and Risk Identification, Corresponding TL can start
Test Plan Preparation in MS-Word by following IEEE 829 Standard Format.
A document that defines the overall testing approach is called Test Plan.
A test plan is a document detailing a systematic approach to testing a system such as a
machine or software. The plan typically contains a detailed understanding of the eventual
workflow.
VERIFYING REJECTED
SUBMITTED
DEFERRED OR TO BE
VERIFICATION FAILED IN PROGRESS
VERVRIFIED
APPROVED
TO BE VERIFIED
FIXED
CLOSED
DEFECT
If tester found any mismatch between expected and actual value.
BUG
Once developer accepts tester’s identified defect that is called bug.
FAILURE
Defect reaches the customer then is called failure.
FAULT
When the product/software successfully launched in the market and running properly
but due to any reason if it works unexpectedly is called Fault.
Example
You are driving a car and you are on road while on driving now there is two way on the road
1) left--> mumbai
2) right--> delhi
Now you have to go to delhi it means you have to turn the steering to the right, but by
mistake you turn the steering to the left, from that position that is called as "Error" because
human interaction is there And now Fault is there till you will not reach the Mumbai, but when
you reach Mumbai that is a final stage which is called "Failure" becoz you had to reach Delhi but
now you are in Mumbai.
The Waterfall Model was first Process Model to be introduced. It is also referred to as
a linear-sequential life cycle model. It is very simple to understand and use. In a waterfall
model, each phase must be completed fully before the next phase can begin. This type of
model is basically used for the project which is small and there are no uncertain
requirements. At the end of each phase, a review takes place to determine if the project is on
the right path and whether or not to continue or discard the project. In this model the
testing starts only after the development is complete. In waterfall model phases do not
overlap.
ADVANTAGES
This model is simple and easy to understand and use.
It is easy to manage due to the rigidity of the model – each phase has specific
deliverables and a review process.
In this model phases are processed and completed one at a time. Phases do not
overlap.
Waterfall model works well for smaller projects where requirements are very
well understood.
DISADVANTAGES
Once an application is in the testing stage, it is very difficult to go back and change
something that was not well-thought out in the concept stage.
No working software is produced until late during the life cycle.
High amounts of risk and uncertainty.
Not a good model for complex and object-oriented projects.
Poor model for long and ongoing projects.
Version Control
Version Date Description of Change Author
0.1 21st May 2015 Initial version Shivanandini Kuncham
0.2 25th May 2015 Updated with review Shivanandini Kuncham
comments
0.3 11th June 2015 Added requestorID in the input Shivanandini Kuncham
request message fields
0.4 29th June 2015 Till date updates added in Shivanandini Kuncham
orange
“Create User”
Request
User already
No
Existing
Yes
Create new
AAD user
Is exact Yes
Match
Configure user to
the user groups
Return user No provided in the
objectId to calling request
application
Return message
that found partial
match and
respond with the Return user object
same provide to calling
details masked application
Steps: Search if there is any existing user with the same UserPrincipalName
1. If user exists & if it is exact match (Match with display name, mobile, otherMails) then assign that
user with the new group and respond with the user objectID + message that you linked to
existing user as you found exact match.
“Update
User”
Request
User objectID
No
exists
Yes
Give error
response back
to caller Is update request
on unique No
mandatory fields
Yes
Any existing
Update as
duplicate value for No
required
requested data
Yes
Give error
response back
to caller
Steps:
1. If objectID does not exist respond with error to the calling application
Yes
No
Steps:
1. If user or group do not exist, then reply with error to calling application. In case of user do not
exist check for group too and provide consolidated response
2. If user & group exists, add user to the group. Repeat for all the groups mentioned in the request (if
any). Respond back with success message
3. One request per partner user but can be with multiple groups
Remove User from a Group Service
“Remove
User from a
group”
Request
User exists
Yes
No
Steps:
This is a sample SRS document for the live project training. Please read this
document and use it as a reference for our live software testing project
The following are restricted fields where an ESS-User cannot make changes to the following
details and need to be populated by the HR Admin and the respective ESS-Supervisor.
Personal Details
Employee ID
SSN No
SIN No
Driver License No
Date of Birth
Click “Browse” and then select a photograph from the relevant path. Click “Upload” once you
have selected the picture .The picture selected will be populated on the photograph section.
*Note: You may only upload a maximum size of 1 Megabyte in jpg, png, gif format.
3.1.3 Contact Details
Contact information can be entered from here. Click on “Contact Details” under the Employee
Details column and the screen as shown in Figure 1.3 will appear.
Enter the “Name” of the person you wish the company to contact in case of emergency, your “Relationship”
with the contact person provided and a “Home Telephone” or “Mobile Number” the company can reach
him/her.
Click “Save” once the fields are added, the emergency contact will be listed as shown in Figure 1.5.
Enter the “Name” of your dependent, the “Relationship” of the dependent to you and his/her “Date of Birth”.
Click “Save” once you have entered the following fields and your dependent will be listed as
shown in Figure 1.7.
Select the document type (Passport or Visa) you wish to add details of, the “Number” whether it
is a passport number or a visa number, the “ Issued Date” , “Expiry Date”, the “Eligible Status” of
your Passport/Visa and the “Eligible Review Date” as to when the eligibility status was reviewed.
You may write a comment if necessary.
Click “Save” once the fields are added and the following immigration documents will be listed as
shown in Figure 1.9.
3.1.9 Report To
As an ESS-User, you are only able to view the list of supervisors that you report to and if you are an
ESS-Supervisor as well, you will see the list of your subordinates as shown in Figure 2.2.
You are restricted from editing the following fields:
●Assigned Supervisors
●Assigned Subordinates
●Attachments
3.1.10 Qualifications
● Work Experience
Your previous work experiences can be entered here. To enter previous work experiences, click “Add” under
“Work Experience” and the screen as shown in Figure 2.3 will appear.
To delete an entry, click on the check box next to particular entry. It is also possible to delete
multiple entries at the same time by clicking the check box entries you wish to delete and simply
clicking “Delete”.
● Languages
You can enter the various languages that you are competent in, with the level of competency. To
enter your language of competency, click “Add” under “Language” and the screen as shown in
Figure 2.9 will appear.
Click “Browse” and select the file from the relevant path and click “Upload” to upload it.