Sunteți pe pagina 1din 44

Manual Testing

Introduction
IT Market - Romania, 2018

● Romania, 13th position


● Skills and lower costs
● 20.000 IT&C companies
● 100 large players
● 12.000 new open positions annually
Attractive employers

● Friendly environment ● Secure jobs


● Flexible working time ● Challenging projects
● Training programs ● Fast promotion opportunities
● Good reputation ● Creative environment
Organization

The system being produced will tend to


have a structure that mirrors the structure
of the group that is producing it!
Organization

Assumption Reality

● Software development ● NEVER ENDING set of


means repeating a series decisions which are executed
by every individual on the
of steps using specific
team, leading to missed
processes, no conflict
delivery goals and ambiguity.
expectations, good
engineering.
Organization

● Several projects, different engineering teams

How is this tied to a whole structure?


● Project format
● Functional format
Project format

● Development people are grouped based on the


project they work.
● Engineers are part of the project from beginning
until completion.
Functional format

● Development people are grouped based on the


functional staff they belong to.
● Individuals are moved from one project to another
based on current needs, performing on different
phases of the project.
Organization key roles

Project Manager
organises resources in order to make sure that
delivery goals are completed.
Organization key roles

Development Manager
manages the development team considering technical
responsibilities.
Organization key roles

Team Leader
making sure that the team is delivering software
according to expected standards.
Organization key roles

Business Analyst
responsible for defining new features and project
scope.
Organization key roles

QA Manager
in charge of assigning and scheduling testing tasks, set
up the quality standards, specifications and
procedures.
Organization key roles

Developer
in charge for the solution implementation.
Organization key roles

Tester
ensure that the software meets the client
requirements, by performing specification
analysis, writing test plans and running tests.
Organization key roles

DevOps Engineer
manages the IT infrastructure required by
the implemented software.
Organization key roles

Support Engineer
responding to customer issues, as well as
troubleshooting them.
Software development life cycle (SDLC)

● Requirement gathering and analysis


● Design
● Implementation or coding
● Testing
● Deployment
● Maintenance
SDLC gone wrong
Software testing life cycle

● Requirement Analysis
● Test Planning
● Test Case Development
● Environment Setup
● Test Execution
● Test Closure Activities (reporting, evaluation)
What means testing?

Activity that validates the fact that the


current functionality of a product is
according to the requirements provided by a
customer.
What means testing?

Testing is made to find information. Critical


decisions will be made based on this
information.
Why is it important?

Bugs can be expensive and dangerous, lots


of examples in history.
Epic bugs

1962 - $18.5 million lost when


NASA's Mariner spacecraft
blasted off 4:55 minutes after
take off.
Epic bugs

1990 - AT&T lost $60 million, long


distance service down due to relay
switches software update.
Epic bugs

1994 - Intel lost $475 million


due to bad math calculations.
Epic bugs

1998 - NASA lost $125


million, different units of
measurement for Mars
Climate Orbiter.
Epic bugs

1985 - changing a radiation therapy tool


mode caused unfiltered X-rays to be sent to
patients, causing deaths.
Epic bugs

1991 - 28 soldiers died


when Patriot missile
failed to intercept Iraqi
Scud missile due to bad
time accuracy.
Why bugs appear

● Frequent software changes


● Incomplete or inexistent requirements
● Low testing skills
● Lack of experience
● Software complexity
● Communication gaps
● Timelines
Bug prevention

If you understand bugs, there is


no need to fight them!
Bug prevention

● Improved communication
● Close requirement tracking
● Demo of small software pieces
● Unit testing
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.
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.
Who is the tester?

Your clients:
● Project manager
● Programmer
● Technical writer
● Technical support
● THE USER
Who is the tester?

The person who focuses on failure in order to help the


customer focus in making the product more
successful.
How?

● everyone creates something, you want to break it


○ it improves the chances of finding the failures
● How?
○ test things that are changed often
○ test core functions
○ test common situations
○ test common threats
○ test high impact problems
○ test most wanted areas
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?

How?
● gather and validate proofs
● take good decisions
● think under pressure
● identify patterns
● learn, learn, learn
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.
Think like a tester

Great testers are thinking creatively, practically,


critically and technically. Learn to think that things
may not be as they seem.
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.
Testing principles
● Testing shows the presence of bugs
● Exhaustive testing is impossible
● Early testing
● Defect clustering
● The pesticide paradox
● Testing is context dependent
● Absence of errors fallacy
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-mast
er-in-2017
Questions?

S-ar putea să vă placă și