wantsome.
ro Mai mult
decât știai.
Manual Testing
10/05/2020
Introduction
IT Market - Romania, 2019
● Romania, 13th position
● Skills and lower costs
● 140.000 IT professionals
● 11,1% Salaries annual growth rate since 2013
● 100 large players
● 15.000 new open positions annually
wantsome.ro
Attractive employers
● Friendly environment
● Flexible working time
● Training programs
● Good reputation
● Secure jobs
● Challenging projects
● Fast promotion opportunities wantsome.ro
Organization
The system being produced will tend to have a
structure that mirrors the structure of the group
that is producing it!
wantsome.ro
Organization
Assumption
● Software development means repeating a series of steps using
specific processes, no conflict expectations, good engineering.
Reality
wantsome.ro
● NEVER ENDING set of decisions which are executed by every
How is this tied to a whole structure?
Project format
• Development people are grouped based on the project they
work.
• Engineers are part of the project from beginning until
completion.
wantsome.ro
Organization key roles
wantsome.ro
Organization key roles
Project Manager
organises resources in order to make sure that
delivery goals are completed.
wantsome.ro
Organization key roles
Development Manager
manages the development team considering
technical responsibilities.
wantsome.ro
Organization key roles
Team Leader
making sure that the team is delivering software
according to expected standards.
wantsome.ro
Organization key roles
Business Analyst
responsible for defining new features and project
scope.
wantsome.ro
Organization key roles
QA Manager
in charge of assigning and scheduling testing tasks,
set up the quality standards, specifications and
procedures.
wantsome.ro
Organization key roles
Developer
in charge for the solution implementation.
wantsome.ro
Organization key roles
Tester
ensure that the software meets
the client requirements, by
performing specification
analysis, writing test plans and
running tests.
wantsome.ro
Organization key roles
DevOps Engineer
manages the IT infrastructure required by the
implemented software.
wantsome.ro
Organization key roles
Support Engineer
responding to customer issues, as well as
troubleshooting them.
wantsome.ro
Software development life cycle (SDLC)
wantsome.ro
SDLC gone wrong
wantsome.ro
Software testing life cycle
ISQTB refers also to other ongoing
activities:
• Test monitoring and control
• Test Case Development
- Test design
- Test Implementation
In general even if they look sequentially
they are more iterative activities e.g. in
Agile - small portions
wantsome.ro
MindMap
• Graphical representation of an idea or concept
• Used in activities like requirements analysis, test design, test
planning
Benefits
• better test planning
• testing Traceability
• monitor testing progress
wantsome.ro
MindMap
wantsome.ro
What does testing means?
Activity that validates the fact that the
current functionality of a product is
according to the requirements
provided by a customer.
wantsome.ro
Validation VS Verification
• Verification
- Are we building the product right?
- Reviews, Meetings, Inspections
• Validation
- Are we building the right product?
- Testing like black box testing, white box testing, gray box
testing
wantsome.ro
Why is it important?
Bugs can be expensive and dangerous, lots
of examples in history.
wantsome.ro
Epic bugs
1962 - $18.5 million
lost when NASA's
Mariner spacecraft
blasted off 4:55
minutes after take off.
wantsome.ro
Epic bugs
1990 - AT&T lost $60 million, long distance
service down due to relay switches
software update.
wantsome.ro
Epic bugs
1994 - Intel lost $475 million due to bad
math calculations.
wantsome.ro
Epic bugs
1998 - NASA lost
$125 million,
different units of
measurement for
Mars Climate
Orbiter.
wantsome.ro
Epic bugs
1985 - changing a radiation therapy tool
mode caused unfiltered X-rays to be sent
to patients, causing deaths.
wantsome.ro
Epic bugs
2019 - 360 passengers
died because a failure
in the MCAS Boeing
737 Max system
wantsome.ro
Why bugs appear
• Frequent software changes
• Incomplete or inexistent requirements
• Low testing skills
• Lack of experience
• Software complexity
• Communication gaps
• Timelines
wantsome.ro
Bug prevention
If you understand bugs, there is no
need to fight them!
wantsome.ro
Bug prevention
● Improved communication
● Close requirement tracking
● Demo of small software pieces
● Unit testing
wantsome.ro
Who is the tester?
●Role of a tester goes beyond just testing and
finding bugs.
Responsible of the test process, it works with
●
all parts involved in the project in order to
build and improve the software.
wantsome.ro
Who is the tester?
Testers should ‘light the way’
for all the parts involved in a
project - where they are, what
obstacles are ahead, how
close is the finish line.
wantsome.ro
Who is the tester?
Your clients:
● Project manager
● Programmer
● Technical writer
● Technical support
● THE USER
wantsome.ro
Who is the tester?
The person who focuses on failure in order to
help the customer focus in making the product
more successful.
wantsome.ro
How?
• test things that are changed often
• test core functions
• test common situations
• test common threats
• test high impact problems
• test most wanted areas
wantsome.ro
Testers think differently
• are they negative people?
• do they complain OR they offer evidence?
• they like to break things OR they remove the illusion that things work?
• they are excited to deliver bad news OR they are happy to remove the
customer false beliefs?
wantsome.ro
Testers think differently – How?
• gather and validate proofs
• take good decisions
• think under pressure
• identify patterns
• learn, learn, learn
wantsome.ro
Think like a tester
• Testing is in your head: your
choices, your ability to interpret
evidences, your storytelling
skills.
• Be a good tester by thinking like
one, not looking like one.
wantsome.ro
Think like a tester
Great testers are thinking creatively,
practically, critically and technically. Learn to
think that things may not be as they seem.
wantsome.ro
Think like a tester
You need to explore in order to test. Work with it,
get into it. Exploring it involves a lot of thinking:
forward, backward and lateral.
wantsome.ro
Testing principles
wantsome.ro
Exhaustive testing is impossible
• Testing everything (all combinations of inputs and
preconditions) is not feasible, except for trivial cases
• We use risks and priorities to
• focus testing efforts.
• We carry out a risk assessment
• to decide how much testing to do.
wantsome.ro
Defect clustering
• A small number of modules contain most of the defects
discovered during pre-release testing, or show the most
operational failures
• This can give a good indication that when a defect is
found in one area of the application, chances are there
are more defects in that particular area, so it is worth
investing more time to test that particular area of the
application to find as many defects as possible
wantsome.ro
Pesticide paradox
• If the same tests are repeated over and over again,
eventually the same set of test cases will no longer
find any new bugs
• In other words: the more you test the software the
more immune it becomes to your tests
• To overcome the pesticide paradox, software testers
must continually review and write new and different
tests to exercise different parts of the program and
find more bugs
wantsome.ro
Testing shows presence of
defects
• Testing can show that defects are present, but cannot
prove that there are no defects
• Testing reduces the probability of undiscovered defects
remaining in the software but, even if no defects are
found, it is not a proof of correctness
wantsome.ro
Early testing
• Testing activities should start as early as
possible in the software or system
development life cycle and should be
focused on defined objectives
• It is much cheaper to fix a defect in the
early stages of testing
• How early should testing begin? Start
when requirements are defined
wantsome.ro
Testing is context dependent
• Testing is done differently in different contexts.
• For example, safety-critical software is tested differently from an
e-commerce site
• Absence of errors fallacy
• Finding and fixing defects does not help if the system built is unusable
and does not fulfill the user needs and expectations.
wantsome.ro
wantsome.ro
References
Manual testing tutorial: https://www.guru99.com/manual-testing.html
SDLC: https://stackify.com/what-is-sdlc/
STLC: https://www.guru99.com/software-testing-life-cycle.html
Tester skills:
https://www.testing-whiz.com/blog/15-skills-every-software-tester-should-master-i
n-2017
ISQTB Syllabus:
https://www.istqb.org/downloads/send/2-foundation-level-documents/281-istqb-ct
fl-syllabus-2018-v3-1.html refer to Chapter 1.4.2
wantsome.ro