Quality assurance is a planned systematic
approach of testing a product or a service that
assures full confidence that it meets the end
user needs and conforms to the specific
features and requirements.
Quality software is reasonably bug-free, delivered
on time and within budget, meets requirements
and/or expectations, and is maintainable. Testing
is context based and risk driven
It is a process that identifies the correctness,
completeness and quality of software
Software testing is targeted as a detection
process to test a system with a controlled set of
conditions and compare the expected output to
It can be a process of input values to a system to
make it or break it using normal and abnormal
A coding error that causes and unexpected fault in
a computer program that can lead to failure.
If a program/product/service does not work as
intended is considered as a big
No clarity of requirements (poor requirements)
No communication or miscommunication
Change in requirements
Time pressure for delivery (unrealistic deadlines)
Poorly designed or architecture form code
Technology Savvy and should have different domain
Perfectionist and realistic attitude
Persuasive and diplomatic
Explorer ,risk taking and should be creative
Problem solving and troubleshooting skills
Team Player and good understanding and communication
Act as a gate keeper for the software release
Accurate and Precise in observations
Act as an end customer
Understanding that No Application is 100 % bug free
Verification is the process of reviewing the
specifications and requirements and doing a
walkthrough that the software is build according to
Validation is the process of actually running the
testcases. It ensures that the software operates as
planned in the requirements phase by executing it,
running predefined test cases and measuring the
output with expected results.
Design and specification
Testing and Release
Implementation and final testing
High level Test plan for the project
Test Strategy for project including regression
Defect measurement criterion and tools
manual Vs Automation for testing
Develop testcase format
Develop test cycles
Define area of stress and performance
Define procedures for data maintenance: backup
and restore etc
Revise test plan
Revise test cycle timelines
Risk assesment criterion
Test plan validation for database
Finalize the testplan and test cycle for time
Implement the design as per requirements
Unit testing phase
Test using automated system
Run through QA acceptance to make it QA ready
Finish all testcases to be executed
Run the testcases (back end & Front end)
Verifications for bugs
Meet the schedule for test plan and test cycle as
per release timeline
This is the cycle that starts during testing when
you start testing the software first time when
delivered by developers for QA ready stage.
Points to remember when a bug is found:
Communicate it to developer
Assign a developer to get it fixed
Re-test the fix after the fix is provided
Re-test the areas that can be affected as a result of the
BUG LIFE CYCLE
Developer accepts the
fixes the bug
and it works
Priority means how urgently the issue can be fixed.
Priority is related to scheduling to resolve the problem.
Severity means how severe it is affecting the
The priority status is set based on the customer
Product manager is to decide the Priority to fix a bug.
Based on ‘Project Priorities the product fixes are done
has to fix it at the earliest.
The severity type is defined by the tester based on the
written test cases and functionality.
Is related to technical aspect of the product. It reflects on
how bad the bug is for the system.
It is totally related to the quality standard or devotion to
Severity means how big functionality is affecting of the
Based on Bug Severity the product fixes are done.
A testcase is a step by step detailed process that
describes the action to take to test a scenario and
explains about what is the expected result for that
scenario/use case for that feature
A use case is a scenario that describes the
behavior under various conditions as per the
specifications or requirements.
Below is an example of testcase template with
different fields in a column format:
Lets take an example for a website link to write
Test Use case is to test the functionality of a link
“Join for Free” for the website
There will be 6 fields when you click on the link.
The 6 fields will be namely
Zip code should error out if alphabets are entered
Email should contain the domain name and error
out if incorrect email without domain name is
◦ Test Case#2:Enter a series of alphabets for the zip code
field and click on join.
◦ Expected output: The 5 Digit zip code you entered
should include only numbers. Please try again.Below
screen shows it is passed.
Follow and execute all the testcases designed and follow
the test plan written.
Follow the process and steps for the Bug Life cycle if
some testcases failed.
File a bug if bug is found
Follow up with the developer in terms of acceptance and
Manage the deadlines for completing the testing and
Constant communication with the development team on
any issues found and any blockers found
Prepare infrastructure in terms of Browser testing if there
is need to test on different browsers
Cover all the use cases including any corner cases.
Re-test any bugs fixed.
Do a regression testing when all testcases are passed
so that the build is tested for pre release and is accepted
by the team and product managers.
Complete remaining tasks for testing.
Update the Development and Management
Teams with the Test progress
Complete steps and update team if software is
ready for build and code can be frozen.
Prepare for the release build.