0% found this document useful (0 votes)
36 views100 pages

Manual Testing Review - Part1 Jmii

The document provides a comprehensive overview of manual testing concepts, including types of software, testing vocabulary, and the importance of software quality. It covers various testing techniques such as functional, black-box, and integration testing, along with definitions of key terms like Quality Assurance and Quality Control. Additionally, it discusses the reasons for testing and common errors that lead to software bugs.

Uploaded by

Jay Cee
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views100 pages

Manual Testing Review - Part1 Jmii

The document provides a comprehensive overview of manual testing concepts, including types of software, testing vocabulary, and the importance of software quality. It covers various testing techniques such as functional, black-box, and integration testing, along with definitions of key terms like Quality Assurance and Quality Control. Additionally, it discusses the reasons for testing and common errors that lead to software bugs.

Uploaded by

Jay Cee
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 100

Systems Integration and Architecture

REVIEW OF MANUAL TESTING


(Part-1) Lecturer :
Mr. Jomark P. Leal
Review of Manual Testing

01 Basic Concepts of Testing


and its Vocabularies
02 Testing Scope
Basic Concepts of Testing & Vocabularies
BASIC TESTING CONCEPTS
What are the basic testing concepts?

WHAT?
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

Software is a collection of computer


programs that help us to perform tasks
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

TYPES OF SOFTWARE
1. System Software
2. Programming Software
3. Application Software
Ex. Desktop apps, Web applications,
mobile apps
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

Types of System Software


System software is essential for managing and controlling computer
hardware and providing a platform for running application software. Here are
the main types of system software:

1. Operating System (OS)


An operating system is the most critical type of system software. It manages
computer hardware and software resources and provides common services
for computer programs. Examples include Windows, macOS, Linux, and
Android. The OS handles tasks such as resource management, process
management, memory management, security, file management, and device
management
BASIC TESTING CONCEPTS
What are the basic concept of testing ?

2. Utility Programs
•Perform specific tasks to maintain, analyze, and optimize computer
performance.
•Examples:
• Disk Management Tools (e.g., defragmenters, disk cleaners).
• Antivirus Software (e.g., Norton, McAfee).
• Backup Tools (e.g., Acronis, Windows Backup).
• File Compression Tools (e.g., WinRAR, 7-Zip).
BASIC TESTING CONCEPTS
What are the basic concept of testing ?

3. Device Drivers
•Enable communication between the operating system and hardware
devices.
•Examples:
• Printer drivers.
• Graphics drivers (e.g., NVIDIA, AMD).
• Network drivers.
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

Programming software refers to a type of application software that provides


developers with the tools needed to write, test, debug, and maintain code. It helps
programmers create software applications and manage their development process.
Programming software includes a variety of tools, from text editors to integrated
development environments (IDEs), that make coding easier and more efficient.

Key Features of Programming Software:


1.Code Writing: Facilitates writing and editing source code in various
programming languages.
2.Syntax Highlighting: Enhances readability by color-coding code elements
(keywords, variables, functions).
3.Error Checking: Provides tools to identify and correct mistakes in code.
4.Debugging Tools: Allows developers to find and fix bugs in their programs.
BASIC TESTING CONCEPTS
What are the basic concept of testing ?

Types of Programming Software:


1.Text Editors
-Simple tools for writing code, typically with basic features like syntax highlighting and
search/replace.
*Examples: Sublime Text, Notepad++, Vim, Emacs.

2.Integrated Development Environments (IDEs)


-Full-featured environments that integrate code writing, debugging, compiling, and
other development tools in one application.
*Examples:
1. Visual Studio (for C#, C++, .NET development).
2. Eclipse (for Java, C++, Python).
3. PyCharm (for Python).
4. Xcode (for iOS/macOS development).
BASIC TESTING CONCEPTS
What are the basic concept of testing ?

3. Compilers
-Programs that convert high-level programming languages (like
C or Java) into machine-readable code.
Examples: GCC (GNU Compiler Collection), javac (for Java).

4.Interpreters
-Programs that execute code line by line, directly interpreting
high-level languages without compiling them first.
Examples: Python Interpreter, Ruby Interpreter.

5. Debuggers
-Tools for detecting and fixing errors in code by stepping through
the program and monitoring its behavior.
Examples: GDB (GNU Debugger), Visual Studio Debugger.
BASIC TESTING CONCEPTS
What are the basic concept of testing ?

6. Database Management Tools


-Used for managing databases and writing queries within applications.
Examples: MySQL Workbench, MongoDB Compass.
BASIC TESTING CONCEPTS
What are the basic concept of testing ?

Application Software
-This type of computer program that is specifically designed to help
users perform specific tasks or achieve particular objectives. It works
on top of system software (like an operating system) and directly
interacts with users.
BASIC TESTING CONCEPTS
What are the basic concept of testing ?

Types of Application Software:


1.Productivity Software
Purpose: Helps users with tasks like writing, data management, and presentations.
Examples: Microsoft Word, Excel, PowerPoint, Google Sheets.
2.Web Browsers
Purpose: Enables users to access and navigate the internet.
Examples: Google Chrome, Mozilla Firefox, Microsoft Edge.
3.Multimedia Software
Purpose: Allows users to create, edit, or play audio, video, and images.
Examples: Adobe Photoshop, VLC Media Player, iMovie.
BASIC TESTING CONCEPTS
What are the basic concept of testing ?

4.Communication Software
Purpose: Facilitates communication and collaboration.
Examples: Zoom, Microsoft Teams, Slack, WhatsApp.
5.Gaming Software
Purpose: Provides entertainment through interactive experiences.
Examples: Minecraft, Fortnite, Call of Duty.
6.Database Management Software
Purpose: Manages and organizes large volumes of data.
Examples: Microsoft Access, MySQL, Oracle Database.
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

Software Testing
▪ A part of software development process
▪ An activity to detect and identify the defects
in the software
Therefore, the objective of testing is to release
quality product to the client.
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

Software Quality
• Bug-free
• Delivered on time
• Within budget
• Meets requirements and/or expectations
• Maintainable
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

There is software application that is developed


for specific customer based on the
requirements (i.e. Grab Car tracking app)

There is software application that is developed


for multiple customers based on market
requirements (i.e. Ticketing system for tracking
customer arrival).
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

WHY?
BASIC TESTING CONCEPTS
What are the basic concept sof testing ?

Reason for Testing

To deliver quality product.


TESTING VOCABULARY
What are the different testing vocabularies?

Quality Assurance (QA): Deals with


‘prevention’ of defects in the product being
developed.
TESTING VOCABULARY
What are the different testing vocabularies?

Quality Control (QC): Its focus is defect


detection and removal. Testing is a quality
control activity.
TESTING VOCABULARY
What are the different testing vocabularies?

Quality Improvement: To change a


production process so that the rate at which
defective products (defects) are produced is
reduced.
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

ERROR, BUG/DEFECT VS. FAILURE

Error-human mistakes
-characteristics of human actions
- indirect human action
(omission or commission)
BASIC TESTING CONCEPTS
What are the basic testing concepts?

Bugs/Defects- related to application which


shows deviation from expected actual
behavior.
TESTING VOCABULARY
What are the different testing concepts?

Error or Defect: 1. A discrepancy between a


computed, observed or measured value or
condition and the true, specified or
theoretically correct value or condition
TESTING VOCABULARY
What are the different testing concepts?

Error or Defect: 2.Human action that results


in software containing a fault (e.g., omission
or misinterpretation of user requirements in a
software specification, incorrect translation
or omission of a requirement in the
design specification)
TESTING VOCABULARY
What are the different testing vocabularies?

Defect Density
“ The degree of compactness of a substance
(Source: Google)”.
TESTING VOCABULARY
What are the different testing vocabularies?

Defect Tracking Tools: Tools for


documenting defects as they are found
during testing and for
tracking their status through to resolution.
TESTING VOCABULARY
What are the different testing concepts?

BEWARE
The higher bug density, the poorer the
Quality.
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

Failure- deviation that was identified by the


end-user after sometime using the app.
BASIC TESTING CONCEPTS
What are the basic concepts of testing ?

5 Why’s Software has Bugs


➢ Miscommunication or No communication
➢ Software Complexity
➢ Programming Errors
➢ Changing requirements
➢ Lack of skilled Testers
TESTING VOCABULARY
What are the different testing vocabularies?

Brainstorming: An
individual but usually
group process for
generating creative
and diverse ideas.
TESTING VOCABULARY
What are the different testing vocabularies?

Audit: This is an inspection/assessment


activity that verifies compliance with plans,
policies and procedures and ensures that
resources are conserved.
TESTING VOCABULARY
What are the different testing vocabularies?

Desk Check: A verification technique


conducted by the author of the artifact to
verify the completeness of their own work.
TESTING VOCABULARY
What are the different testing vocabularies?

Baseline: A quantitative measure of the


current level of performance.
TESTING VOCABULARY
What are the different testing vocabularies?

Benchmarking: Comparing your company’s


products, services or processes against best
practices or competitive practices, to help
define superior performance of a product,
service or support processes.
TESTING VOCABULARY
What are the different testing vocabularies?

Functional Testing:
Testing that ensures
all functional
requirements are met
without regard to
the final program
structure.
TESTING VOCABULARY
What are the different testing concepts?

Common Functional Testing Techniques


• Smoke testing
• Sanity testing
• Black box testing
• Integration testing
TESTING VOCABULARY
What are the different testing vocabularies?

Black-box Testing: A test technique that


focuses on testing the functionality of the
program component or application against
its specifications without knowledge of how
the system constructed.
TESTING VOCABULARY
What are the different testing concepts?

Types of Black-box Testing


✓ Functional testing
✓ Non-functional testing
✓ Regression testing
TESTING VOCABULARY
What are the different testing concepts?
TESTING VOCABULARY
What are the different testing concepts?

Black-box Testing Techniques


❖ Equivalence Partitioning
❖ Boundary Value Analysis
❖ Decision Table Testing
❖ State Transition Testing
❖ Use Case Testing
❖ Error Guessing
TESTING VOCABULARY
What are the different testing vocabularies?

Equivalence Partitioning: A test technique


that utilizes a subset of data that is
representative of a larger class.
TESTING VOCABULARY
What are the different testing vocabularies?

Example 1: One of the fields on a form


contains a text box that accepts numeric
values in the range of 18 to 25. Identify the
invalid Equivalence class.
A) 17
B) 19
C) 24
D) 21
TESTING VOCABULARY
What are the different testing vocabularies?

Solution1:
The classes will be as follows:
Class I: values < 18 => invalid class
Class II: 18 to 25 => valid class
Class III: values > 25 => invalid class
17 falls under an invalid class.
19, 24 and 21 fall under valid class.
TESTING VOCABULARY
What are the different testing vocabularies?

Boundary value analysis: A data selection


technique in which test data is chosen from
the “boundaries” of the input or output
domain classes, data structures and
procedure parameters. Choices often
include the actual minimum and maximum
boundary values, the maximum value plus
TESTING VOCABULARY
What are the different testing vocabularies?

or minus one and the minimum value plus or


minus one.
TESTING VOCABULARY
What are the different testing concepts?

Example 1: Identify test values using BVA.


TESTING VOCABULARY
What are the different testing concepts?

Example 2: Identify test values using BVA.


TESTING VOCABULARY
What are the different testing vocabularies?

Decision Table: A tool for documenting the


unique combinations of conditions and
associated results in order to derive unique
test cases for validation testing.
TESTING VOCABULARY
What are the different testing concepts?

Types of Decision Table


1. Limited Entry
2. Extended Entry
TESTING VOCABULARY
What are the different testing concepts?

Types of Decision Table


1. Limited Entry
2. Extended Entry
TESTING VOCABULARY
What are the different testing concepts?

4 Parts of Decision Tables


1. Condition Stubs
2. Action Stubs
3. Condition Entries
4. Action Entries
TESTING VOCABULARY
What are the different testing ?
TESTING VOCABULARY
What are the different testing concepts?
TESTING VOCABULARY
What are the different testing concepts?
TESTING VOCABULARY
What are the different testing vocabularies?

State Transition Testing: State Transition


Testing exhibits the various states of
scenario/system and possible transition
between them.
A B

D C
TESTING VOCABULARY
What are the different testing vocabularies?

Example: Based on the given state transition


diagram of a switch which of the following
test case is invalid?
A. OFF to ON S2 ON FAULT S3

B. ON to OFF
C. FAULT to ON
D. ON to FAULT S1 OFF
TESTING VOCABULARY
What are the different testing vocabularies?

Use Case Testing

A black box testing technique in which


changes made in input conditions cause
state changes or output changes in the
Application Under Test(AUT).
TESTING VOCABULARY
What are the different testing concepts?

USE CASE TESTING


Rules
❑ The name of an actor or a use case must
be meaningful and relevant to the system.
❑ Interaction of an actor with the use case
must be defined clearly and in an
understandable way.
TESTING VOCABULARY
What are the different testing concepts?

USE CASE TESTING


TESTING VOCABULARY
What are the different testing vocabularies?

Error Guessing: Test data selection


techniques for picking values that seem
likely to cause defects. This technique is
based upon the theory that test cases and
test data can be developed based on
intuition and experience of the tester.
TESTING VOCABULARY
What are the different testing vocabularies?

Integration Testing: This test begins after


two or more programs or application
components have been successfully unit
tested. It is conducted by the development
team to validate the interaction or
communication/flow of information between
the individual components which will be
integrated.
TESTING VOCABULARY
What are the different testing vocabulary?

Types of Integration Testing


❑ Big Bang Approach
❑ Incremental Approach
✓ Top Down Approach
✓ Bottom Up Approach
✓ Sandwich Approach
TESTING VOCABULARY
What are the different testing vocabularies?

Non-Functional Testing
Non functional testing is a type of software
testing that verifies non functional aspects of
the product, such as performance, stability,
and usability.
TESTING VOCABULARY
What are the different testing vocabularies?

Non-Functional Testing
Non functional testing is a type of software
testing that verifies non functional aspects of
the product, such as performance, stability,
and usability.
TESTING VOCABULARY
What are the different testing vocabularies?

White Box Testing : White-box testing is


effectively the opposite of black-box testing.
It focuses on the internal structure of a test
object, rather than just analyzing the inputs
and outputs.
TESTING VOCABULARY
What are the different testing vocabularies?

Techniques of White Box Testing


o Statement based
✓ Static
✓ Dynamic
o Decision-based
✓Static
✓ Dynamic
TESTING VOCABULARY
What are the different testing vocabularies?

Statement Coverage: The statement


based technique focuses on the individual
lines of code to be delivered. The idea is to
analyze the actual lines of code in the
software program and have tests that verify
these lines.
TESTING VOCABULARY
What are the different testing concepts?

Example: Given the following pseudo


code, and the following test inputs: x=3, 1. read (x)
y=6. Which of the following additional 2. read (y)
3. if x > y then
values of x and y will ensure 100% 4. x := 5
statement coverage? 5. Y := 0
A. x = 3, y = 3 6. else if y > x then
B. x = 9, y = 2 7. x := 0
C. x = 8, y = 15; x = 12, y = 12
8. y := 5
9. end if
D. x = 4, y = 4; x = 2, y = 7
TESTING VOCABULARY
What are the different testing vocabularies?

Decision Coverage: A white-box testing


technique that measures the number of – or
percentage – of decision directions
executed by the test case designed. 100%
Decision coverage would indicate that all
decision directions had been executed at
least once during testing.
TESTING VOCABULARY
What are the different testing concepts?

Example 1: Do branch or decision coverage


for the given below.
Test Data:
TESTING VOCABULARY
What are the different testing concepts?

Example 2: Given the pseudocode,


1. read (x)
which of the following values of x and y 2. read (y)
will ensure 100% statement and 100% 3. if x > y then
decision coverage? 4. x := 5
5. Y := 0
A. x = 1, y = 3; x = 2, y = 4; x = 9, y = 2 6. else if y > x then
B. x = 3, y = 3; x = 7, y = 2; x = 9, y = 6 7. x := 0
C. x = 3, y = 7; x = 9, y = 2; x = 4, y = 4 8. y := 5
9. else
D. x = 5, y = 8; x = 2, y = 2; x = 9, y = 12 10. x := 0
11. y := 0
12. end if
TESTING VOCABULARY
What are the different testing vocabularies?

Static vs Dynamic
Whether you use statement or decision-based
techniques there is another choice to make.
TESTING VOCABULARY
What are the different testing vocabularies?

Static Analysis: Static is a manual approach.


This relies on the developer going through the
code and eyeballing the code to see obvious
errors. This can be done by the creator of the
code.
TESTING VOCABULARY
What are the different testing vocabularies?

Dynamic Analysis: Analysis performed by


executing the program code.
TESTING VOCABULARY
What are the different testing vocabularies?

Entrance Criteria: Required conditions and


standards for work product quality that must
be present or met for entry into the next
stage of the software development process.
TESTING VOCABULARY
What are the different testing vocabularies?

Exit criteria: Standards for work product


quality which block the promotion of
incomplete or defective work products to
subsequent stages of the software
development process.
TESTING VOCABULARY
What are the different testing vocabularies?

Force Field Analysis: A group technique


used to identify both driving and
restraining forces that influence a current
situation.
TESTING VOCABULARY
What are the different testing vocabularies?

Formal Analysis: Technique that uses


rigorous mathematical techniques to
analyze the algorithms of a solution for
numerical properties, efficiency, and
correctness.
TESTING VOCABULARY
What are the different testing vocabularies?

Inspection: A formal assessment of a work


product conducted by one or more qualified
independent reviewers to detect defects,
violations of development standards, and
other problems.
TESTING VOCABULARY
What are the different testing vocabularies?

Life Cycle Testing: The process of verifying


the consistency, completeness, and
correctness of software at each stage of the
development life cycle.
TESTING VOCABULARY
What are the different testing vocabularies?

Pass/Fail Criteria: Decision rules used to


determine whether a software item or
feature passes or fails a test.
What are the scope of testing?
TESTING SCOPE
What are the scope of testing?

Software Testing is a
way to assess the
quality of the software
and to reduce the risks
of software failure in
operation.
TESTING SCOPE
What are the scope of testing?

Software Testing Inclusions:


• Test planning
• Analyzing
• Designing
• Implementing tests
• Reporting test progress and results
• Evaluating the quality of a test object
TESTING SCOPE
What are the scope of testing?

How to do Testing?
TESTING SCOPE
What are the scope of testing?

Static testing does not involve the execution of


the component
Ex.: Code reviews, Requirements review,
design review
Dynamic Testing is the execution of the
component or system being tested
Ex. Accepting invalid values, Run time errors
TESTING SCOPE
What are the scope of testing?

Verification and Validation


TESTING SCOPE
What are the scope of testing?

Testing Objectives
1. To prevent the defects
2. To verify all the specified requirements
have been fulfilled
3. To check whether the test object is complete
4. To build confidence
TESTING SCOPE
What are the scope of testing?

Testing Objectives
5. To provide sufficient information
6. To comply with contractual, legal,
or regulatory requirements
TESTING SCOPE
What are the scope of testing?

Component Testing
• To find as many failures
as possible so that the
underlying defects are
identified and fixed early.
TESTING SCOPE
What are the scope of testing?

Acceptance Testing
To confirm that the system works as expected
and satisfies requirements.
TESTING SCOPE
What are the scope of testing?

A Testing Scope is a list of product features,


product parts, or product-related integrations
that must be tested in order to build a
reliable assessment of a product’s quality.
TESTING SCOPE
What are the scope of testing?
TESTING SCOPE
What are the scope of testing?

Tips to Determine the Scope of Software


Testing
The purpose of a predetermined testing scope
is to outline the goal of the tests to complete
clearly.
Tip #1: Clearly Outline the Purpose of the
Software
TESTING SCOPE
What are the scope of testing?

Tip #2: Define a Testing Timeline

Tip # 3: Nail Down a Budget

Tip #4: Know When to Stand and When to


Swim
THANK YOU FOR LISTENING

You might also like