Unleash Your Potential - Namagunga Girls Coding Club
Introduction and Role of a manual testing in a SDLC
1.
2. 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.
3. 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
4. Software testing is targeted as a detection
process to test a system with a controlled set of
conditions and compare the expected output to
evaluate it.
It can be a process of input values to a system to
make it or break it using normal and abnormal
conditions.
5. 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
6. No clarity of requirements (poor requirements)
No communication or miscommunication
Software complexity
People ego
Change in requirements
Time pressure for delivery (unrealistic deadlines)
Poorly designed or architecture form code
perspective
programming errors
7.
Technology Savvy and should have different domain
knowledge
Perfectionist and realistic attitude
Persuasive and diplomatic
Explorer ,risk taking and should be creative
Problem solving and troubleshooting skills
Well organized
Team Player and good understanding and communication
skills
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
8.
Verification is the process of reviewing the
specifications and requirements and doing a
walkthrough that the software is build according to
the specifications.
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.
11. High level Test plan for the project
Test Strategy for project including regression
testing
Acceptance criterion
QA goals
Database selection
Defect measurement criterion and tools
manual Vs Automation for testing
12. Develop testcase format
Develop test cycles
Define area of stress and performance
Define procedures for data maintenance: backup
and restore etc
Review documentation
13. Revise test plan
Revise test cycle timelines
Risk assesment criterion
Test plan validation for database
Finalize the testplan and test cycle for time
estimations
14. 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
15. Run the testcases (back end & Front end)
Bug Reporting
Verifications for bugs
Meet the schedule for test plan and test cycle as
per release timeline
16. 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
fix
17. BUG LIFE CYCLE
Developer accepts the
bug filed
YES
Developer
fixes the bug
Tester files
the bug
YES
Tester
verifies it
and it works
NO
NO
18.
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
functionality.
The priority status is set based on the customer
requirements.
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.
19.
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
standard.
Severity means how big functionality is affecting of the
product.
Based on Bug Severity the product fixes are done.
20. 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.
21.
Below is an example of testcase template with
different fields in a column format:
TestCase
ID
Test Case
Input
Description data/Test
Steps
Expected
Results
Pass/Fail
Status
Lets take an example for a website link to write
sample testcases.
Test Use case is to test the functionality of a link
“Join for Free” for the website
http://www.sears.com
22. 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
provided
23.
24. ◦ 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.
25.
26.
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
fix date.
Manage the deadlines for completing the testing and
testcase execution
Constant communication with the development team on
any issues found and any blockers found
27.
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.
28. 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.