Download as pdf or txt
Download as pdf or txt
You are on page 1of 52

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

You might also like