Manual Testing Material
Manual Testing Material
Manual Testing
Page #
Manual Testing
In other words it’s comparing the actual behavior of an application with expected
behavior.
“Software testing is really required to point out the defects and errors
that were made during the development phases”.
We humans can’t identify our mistakes in a work done by us. We should get
someone else to check our work because another person may identify the
mistakes done by us. In the same way software developers may not
identify the mismatches in a program or application implemented by them
which can be identify by the another department called Software Test
Engineer.
Page #
Manual Testing
requirements.”
Software testing makes sure that the testing is being done properly and
hence the system is ready for the customers to use.
When actual result deviates from the expected result while testing a
software application or product then it results into a defect. Hence, any
deviation from the specification mentioned in the functional
specification document is a defect. In different organizations it’s called
Page #
Manual Testing
differently like bug, issue, incidents or problem.
Page #
Manual Testing
2.3.1Initial
This phase is the main focus of the project managers and stake holders.
Meetings with managers, stake holders and users are held in order to
Page #
Manual Testing
determine the requirements like;
2.3.2 Analysis
Outcome: Final SRS approved by customer, Technology selection for both Dev & QA
2.3.3 Design
“During this part of the design phase, the consultants/architects break down
the system into pieces that can be programmed.”
System Design helps in specifying hardware and system requirements and also
helps in defining overall system architecture. The system design
Page #
Manual Testing
specifications serve as input for the next phase of the model.
Page #
Outcome: Technical Design Document (TDD)
2.3.4 Coding
“The actual development starts and the product is built in coding phase. “
2.3.5Testing
“In Testing phase testers execute the test cases against the application, report
the defects and retested the fixed defects. “
During this phase unit testing, integration testing, system testing, acceptance testing
are done.
Outcome: Defects, Test Summary Report, Test Plan, Test Case document
2.3.6 Delivery & Maintenance
“There are many development models life that have cycle been
developed in order to achieve different required objectives.”
The selection of model has very high impact on the testing that is
carried out. It will define the what, where and when of our planned
testing, influence regression testing and largely determines which test
techniques to use.
- This model is used only when the requirements are very well known, clear and
fixed.
- The project is short.
3.2 V Model
“The – V model is a SDLC model where execution of processes happens in a sequential
manner in V-shape. “
Advantages of V-model:
- Simple and easy to use.
- Testing activities like planning, test designing happens well before coding. This
saves a lot of time.
- Proactive defect tracking – that is defects are found at early stage.
Disadvantages of V-model:
- The V-shaped model should be used for small to medium sized projects where
requirements are clearly defined and fixed.
The V-Shaped model should be chosen when ample technical resources are available
with needed technical expertise.
Practically, this methodology may increase the complexity of the system as scope of the system
may expand beyond original plans.
Incomplete application may cause application not to be used as thefull system was designed
Prototype model should be used when the desired system needs to have a lot of interaction with the end users.
Page #
Manual Testing
- The project can easily get taken off track if the customer representative is not
clear what final
- Only senior programmers are capable of taking the kind
of decisions required during the development process.
Page #
Manual Testing
-based testing technique is also known as „black-box‟or input/output driven testing techniques because they view the software as a black-box with inputs a
inside the box. In black-box testing the tester is concentrating on what the software does, not how it does it.
l testing is concerned with what the system does its features or functions. Non-functional testing is concerned with examining how well the system does. No
Advantages Disadvantages
Well suited and efficient for large code segments. Limited Coverage since only a selected number of test scenarios are actually perform
Code Access not required. Inefficient testing, due to the fact that the tester only has limited knowledge about an a
Blind Coverage, since the tester cannot target specific code segments or error prone
The test cases are difficult to design.
Clearly separates user's perspective from the developer's
ve through visibly defined roles.
mbers of moderately skilled testers can test the application with no knowledge of implementation, programming
or operating systems.
Website:www.testingmasters.com
Email:[email protected]
Page # 9
Manual Testing
Website:www.testingmasters.com
Email:[email protected]
Page #
Below is the black box testing techniques:
- Equivalence partitioning
- Boundary value analysis
- Error Guessing
Advantages Disadvantages
As the tester has knowledge of the
source code, it becomes very easy to Due to the fact that a skilled tester is
find out which type of data can help in needed to perform white box testing, the
testing the application effectively. costs are increased.
will go untested.
Due to the tester's knowledge about the
It is difficult to maintain white box
code, maximum coverage is attained
testing as the use of specialized tools
during test scenario writing.
like code analyzers and debugging tools
are required.
Advantages Disadvantages
S.N. Black Box Testing Grey Box Testing White Box Testing
The Internal Workings of an Tester has full knowledge of
Somewhat knowledge of the internal
1 application are not required to be the Internal workings of the
workings are known
Black known
Box vs Grey Box vs White Box: application
Manual Testing
, Another term
Also known for grey
as closed box testing is
box testing
data driven testing and functional testing
Also known as clear box testing, structural testing or code based testing
Performed by end users and also the tester hasInternal workings are fully known and the tester can design test data acc
by testers and developers
limited knowledge of the insides of the
Testing is based on external
expectations - Internal behavior o
application
the application is unknown
5. Levels of testing
“In software development life cycle models there are defined phases like require
Website:www.testingmasters.com
Email:[email protected]
Page #
Manual Testing
coding or implementation, testing and deployment. Each phase goes through the
testing.”
Hence there are various levels of testing. The various levels of testing are:
Website:www.testingmasters.com
Email:[email protected]
Page #
5.3 Integration Testing
As displayed in the image below when two different modules „Module A‟ and „Modul
integration testing is done.
ill perform Integration Testing:“Integration testing is done by a specific integration tester or test team.”
wn
Up
own integration testing: Testing takes place from top to bottom, following the control flow or architectural. Components or systems are substituted by stub
What is system testing: “Once all the components are integrated, the application as a
wh see that it meets the requirements?”
System testing is most often the final test to verify that the system to be
delivered meets the specification and its purpose.
Who will do the system testing:
testing “System
is carried out by specialist testers or inde
6.1 Verification
Website:www.testingmasters.com
Email:[email protected]
Page #
Manual Testing
- Reviews
- Inspections
- Walk through
There are two types of Reviews held in verification. They are Formal Review and
Informal Review.
Website:www.testingmasters.com
Email:[email protected]
Page #
Manual Testing
6.1.4Inspection:
“Inspection is the most formal form of reviews, a strategy adopted during static
testing phase.”
Website:www.testingmasters.com
Email:[email protected]
Page #
Manual Testing
6.1.5Walkthrough
6.2 Validation
6.1.2 Who will perform: Testing Team, Dev Team, Client or BA team
7.1 Smoke Testing:“Smoke testing refers to testing the basic functionality of the
bui declared as unstable and it is NOT tested anymore until the smoke test of the
build passes.
7.5 Exploratory Testing: “Testing of software without any documents (test cases or
test planning) and Identify the functionality of application by exploring the application
and exploring & learni
7.6 Monkey Testing: “Monkey testing is a software testing technique in which the testi
Website:www.testingmasters.com
Email:[email protected]
Page #
Manual Testing
system under test randomly. The Input data that is used to test also generated r
There isn't really a huge difference between the two and in some
establishments the terms could be used interchangeably. Everywhere is
different.
System testing: You're testing the whole system i.e. all of its components
to ensure that each is functioning as intended. This is more from a
functional side to check against requirements.
End to end testing: This is more about the actual flow through a system in a
more realistic end user scenario. Can a user navigate the application as
expected and does it work. You're testing the workflow.
Website:www.testingmasters.com
Email:[email protected]
Page #
7.9 Usability Testing: “In usability testing basically the testers tests the
ease with which the user interfaces can be used. It tests that whether
the application is user-friendly or not. “
Stress testing is a generic term used to describe the process of putting a system through
stress.
E.g. If the number of users are in creased then how much CPU, memory
will be consumed, what is the network and bandwidth response time.
It can serve different purposes like it can demonstrate that the system meets
performance criteria.
Ex: Let’s see another example of a Zip code field in Sign up form:
Can anyone came tomorrow and hack the system or login the application
without any authorization. It is a process to determine that an information
system protects data and maintains functionality as intended.
This type of testing helps find out how well a system performs in a
particular environment that includes hardware, network, operating
system and other software etc.
Windows Application:
Web application:
Website:www.testingmasters.com
Email:[email protected]
Page #
Manual Testing
“STLC consists of series of activities carried out methodologically to help
certify your software product. These activities are part ofthe Software
Testing Life Cycle.”
Website:www.testingmasters.com
Email:[email protected]
Page #
9.1 Requirement Analysis: “During this phase, test team studies the
requirements from a testing point of view to identify the testable
requirements.”
Sample RTM:
Clarification Document: “Contains all clarifications which will arise during
the requirement analysis phase”.
Sample:
What is Test plan: “Test planning is the first step of the testing
process. In this phase we identify the activities and resources which
would help to meet the testing objectives.”
What Test Plan contains: (IEEE 829 STANDARD TEST PLAN TEMPLATE)
Test plan
identifier Test
deliverables
Introduction
Test tasks
Test items
Environmental
needs Features
to be tested
Responsibilities
Features not to be
tested Staffing and
training needs
Approach Schedule
Item pass/fail
criteria Risks and
contingencies
Who will prepare the test plan: Test Lead or Test Manager.
Manual Testing
Test plan Vs Test Strategy: Generally it doesn’t matter which comes first.
Test planning document is a combination of strategy plugged with overall
project plan. According to IEEE Standard 829-2008, strategy plan is a sub
item of test plan.
9.3 Test Case Development: “During this phase the test cases will be prepared”.
Page #
26
Manual Testing
9.3.1 What is test case: “A test case is a set of conditions under which
a tester will determine whether a system under test satisfies requirements
or works correctly.”
As far as possible, write test cases in such a way that you test
only one thing at a time. Do not overlap or complicate test cases.
Attempt to make your test cases ‘atomic’.
Ensure that all positive scenarios and negative scenarios are covered.
Language:
Write in simple and easy to understand language.
Use active voice: Do this, do that.
Use exact and consistent names (of forms, fields, etc).
Characteristics of a good test case:
Accurate: Exacts the purpose.
Economical: No unnecessary steps or words.
Traceable: Capable of being traced to requirements.
Repeatable: Can be used to perform the test over and over.
Page #
27
Manual Testing
partitions of equivalent data from which test cases can be derived.”
Test cases are designed to cover each partition at least once. This
technique tries to define test cases that uncover classes of errors, thereby
reducing the total number of test cases that must be developed. An
advantage of this approach is reduction in the time required for testing a
software due to lesser number of test cases.
The success of error guessing is very much dependent on the skill of the
tester, as good testers know where the defects are most likely to be. This is
why an error guessing approach, used after more formal techniques have
been applied to some extent, can be very effective.
What is Test Data: “In order to test a software application you need to
enter some data for testing most of the features. Any such specifically
identified data which is used in tests is known as test data.”
Page #
28
Manual Testing
Test data preparation: In the above example we can generate the inputs for Valid and
Invalid partitions.
Ex:
Page #
29
9.3.4 Types of test cases
Functional Test Cases: “The test cases based on functional requirement specifications”
Positive Test Cases: “Test Cases with valid input and also verifying that the outputs
are correct.”
Why Review: For exactly the same reason we test the software
To uncover errors
To check for completeness
To make sure the standards and guidelines are followed
Review Checklist:
Client Review: “Review our work by client or business team after lead review.”
Test environment set-up is one of the critical aspects of testing process and
can be done in parallel with Test Case Development Stage. Test team may not
be involved in this activity if the customer or dev team provides the test
environment in which case the test team is required to do a readiness check
(smoke testing) of the given environment.
- Dev
- QA
- Pre-Production
- Production
“In this phase testing team start executing test cases based on prepared test
planning & prepared test cases in the prior step in testing environment”.
“After test execution phase, if the test case is passed then same can be
marked as Passed. If any test case is failed then corresponding defect can
be reported to developer team via bug tracking system & bug can be
linked for corresponding test case for further analysis.”
Severity:It is the extent to which the defect can affect the software. In
other words it defines the impact that a given defect has on the
system.
Minor: The defect that does not result in the termination and does
not damage the usability of the system and the desired results can be
easily obtained by working around the defects then the severity is
stated as minor.
Few very important scenarios related to the severity and priority which
are asked during the interview:
High Priority & High Severity: An error which occurs on the basic
functionality of the application and will not allow the user to use the
system. (Eg. A site maintaining the student details, on saving record
if it, doesn’t allow to save the record then this is high priority and
high severity bug.)
High Priority & Low Severity: The spelling mistakes that happens on
the cover page or heading or title of an application.
Low Priority and Low Severity: Any cosmetic or spelling issues which
is within a paragraph or in the report (Not on cover page, heading,
title).
- Bugzilla
- JIRA
- ALM (QC)
A typical Defect Tracker will have:
- Defect id
- Date
- Created By
- Assigned TO
- Bug description
- Steps to Reproduce
- Expected Result
- Comments
- Screen shots
Defect Life Cycle:“Defect life cycle is a cycle which a defect goes through during its
lifetime. “
Assigned: After the tester has posted the bug, the lead of the
tester approves that the bug is genuine and he assigns the bug to
corresponding developer and the developer team. It’s state given
as assigned.
Open: At this state the developer has started analyzing and working on the defect
fix.
Fixed: When developer makes necessary code changes and verifies
the changes then he/she can make bug status as ‘Fixed’ and the bug
is passed to testing team.
Pending retest: After fixing the defect the developer has given that
particular code for retesting to the tester. Here the testing is pending
on the testers end. Hence its status is pending retest.
Retest: At this stage the tester do the retesting of the changed code
which developer has given to him to check whether the defect got
fixed or not.
Verified: The tester tests the bug again after it got fixed by the
developer. If the bug is not present in the software, he approves that
the bug is fixed and changes the status to “verified”.
Reopen: If the bug still exists even after the bug is fixed by the
developer, the tester changes the status to “reopened”. The bug
goes through the life cycle once again.
Closed: Once the bug is fixed, it is tested by the tester. If the tester
feels that the bug no longer exists in the software, he changes the
status of the bug to “closed”. This state means that the bug is fixed,
tested and approved.
First one is, testing the changes that has been made because of the
correction in the system or if the system is extended or because of some
additional features added to it.
Second one is regression tests to prove that the rest of the system
has not been affected by the maintenance work.
Metrics:
Effectiveness: Doing the right thing. It deals with meeting the desirable
attributes that are expected by the customer.
Efficiency: Doing the thing right. It concerns the resources used for the service to be
rendered
Example: Total test script developed 1360, total test script executed
1280, total test script passed 1065, total test script failed 215.
Example: Customer filed defects are 21, total defect found while testing
are 267, total number of invalid defects are 17.
DRE= (Defects removed during development phase x100%) / Defects latent in the
product
Defects latent in the product = Defects removed during development Phase+ defects
found later by user
Testing Terminology
1. Project: Requirements will come from one customer and mostly it will
be used by customer and his people.
3. Application: Group of programs designed for the customers to use for specific
operations.
10. Use Case: It will describe the Basic Flow, Alternate Flow and
Exceptional Flow, how the application will be processed. Use case
document will be used as the base document by both the Developers
and the Testers. Developers will write the code based on the Use case
and Testers in turn will identify test scenarios and write test cases
based on the use case. Use will be written by the Business Analysts
from the Functionality requirement document.
11. Test Case: Test cases are the step wise description or activities which
are going to be executed in order to validate the application. The test
cases will contain the step number, description or activity - what action
is going to happen while validation, the input data, the expected result
and the actual
result. The test cases are written based on the functionality or
requirements or the use cases received from the client. Test Cases
will be prepared by Testing Team.
12. Test data: Test data is the data that is used in tests of a software system.
In order to test a software application you need to enter some data for
testing most of the features. Any such specifically identified data which is
used in tests is known as test data.
You can have test data in excel sheet which can be entered manually
while executing test cases or it can be read automatically from files
(XML, Flat Files, Database etc.) by automation tools.
14. Check out: Taking the document to edit (do the changes, ex:
Updating the defect tracker, test cases, etc) from the configuration
management tool or common repository (VSS).
15. Check in: Releasing the document after performing the changes to the
configuration management tool or common repository (VSS).
20. Test Deliverables: The documents which were prepared during the testing phase.
24. Variance: Variance is the difference between what was planned and the
actual value. Ex, if planned date is 20th Jan 15 and actual completion
date is 25th Jan 15 then the variance is 5 days.
26. Escalation: Taking the issue to next step. If there is a defect and
defect is not accepting by the dev team but still you believe that it’s
an issue, you can contact customer for the issue.
27. Roles & Responsibilities: The work which we are going to perform
after getting the Job. The Responsibilities will change based on role. Ex,
Test engineer will do requirement understanding, test case preparation,
execution and reporting the bugs. Test Lead will assign the work to his
team members, collects data, etc.
30. Status Call: Status call will happen daily / weekly / monthly based
on client/company rules where we will discuss about project status.
MOM Contains:
The names of the participants, the agenda items covered, decisions made by
the participants, the follow-up actions committed to by participants, due
dates for the completion of commitments , and any other events or
discussions worth documenting for future review or history.
33. Appraisal: The comp people (HR, Managers, and team) will assess the
individual team member based on Peer/Lead/Manager feedback and
they will revise your salary or role. There will be Midterm and annual
appraisals based on company rules.
34. Rating: Giving ranking for the individual team member by the
Lead/managers based on their skills and their performance during
appraisal period.
35. Time sheet: If a team member is billable (charging client) the he will
have to submit his time sheet weekly/daily contains his tasks completed
during the week. Usually total hours per week are 40 hrs which is 8 hrs per
day.
38. OOO: Out of office, going out from office. Usually uses while informing
to team that you are going out from office.
39. Planned Leave: You planned your leave long before and applied. It’s a
scheduled or planned well before.
Usually we do have 16 planned leave (4 per quarter) and 5-10 sick leaves. It’s diff per
company.
41. PTO: Paid Time Off, taking leave. Using the leaves (Planned Leave, Sick
Leave) and still company pay you salary for this time.
42. Notice Period: Once you want to move out of from the current
company then we will quit the Job. Company has a policy that we will
have to inform before 2/3 months so that they will search for a
replacement for us.
43. Bench Mark: Finalising any document or any process. Ex, Finalising the test cases,
requirement.
44. CTC: Cost to Company (CTC) is the salary package of an employee. It
indicates the total amount of expense an employer (organization) is
spending for an employee in a year.
45. Variable Pay: Variable pay is used generally to recognize and reward
employee contribution toward company productivity, profitability, team
work, safety, quality, or some other metric deemed important.
46. Basic Salary: Basic salary is the amount paid to an employee before
any extras are added or taken off, such as reductions because of salary
sacrifice schemes or an increase due to overtime or a
bonus. Allowances, such as internet for home-based workers or
contributions to phone usage, would also be added to the basic salary.
47. Gross Salary: Gross salary is the term used to describe all of the
money you've made while working at your job, figured before any
deductions are taken for state and federal taxes, Social Security and
health insurance. If you work more than one job, you'll have a gross
salary amount for each one.
49. POC: Point of Contact, to whom we need to contact. There will be diff
for diff departments. Ex, for all QA related queries, you can contact Mr
John, for all development related queries you can contact Mr Anderson.
(OR)
50. Pipeline: In progress, expecting something shortly or near future. Ex, there is more
work in pipe line.
51. Project Sign in: Project was finalised and the team is ready to work on.