Monday, April 02, 2012

Software Testing Syllabus

Introduction to Testing
  • Brief History of Testing
  • Testing Opportunities
  • Testing Principles
Software Quality
Quality Assurance
Quality Control
Differences Between QA and QC
Software Development Life Cycle
Different Life Cycle Models
  • Waterfall Model
  • V – Model
  • Spiral Model
  • RAD Model
  • Prototype Model
  • PET Model
  • Agile Methodology
Testing Types
  • Black Box Testing
  • White Box Testing
  • Acceptance Testing
Testing Techniques
  • Boundary Value Analysis
  • Equivalent Class Partition
Different Testing Definition
  • Test Design
  • Test Methodology
  • Test Scenarios
  • Test Cases
Differences Between Test Methodology, Test Scenario and Test Cases
Levels of Testing
Error, Defect and Bug
Bug Life Cycle
Test Reporting
Test Management
  • Test Policy
  • Test Strategy
  • Test Methodology
  • Test Plan
  • Testing Process
Traceability Matrix
Test Responsibility Matrix
Testing Metrics
Reviews
  • Reviews
  • Walk throws,
  • Inspections
  • Desk Checking
  • Protory
Testing Standards
  • ISO
  • CMMI and PCMMI
  • Six Sigma

Monday, May 23, 2011

Statement Coverage, Branch / Decision coverage and Path coverage

Statement Coverage: Check if each statement in the code has been executed at least once
Branch / Decision coverage: Check if each possible branch from a decision point has been executed at least once
Path coverage: Check if every possible path is executed at least once.

Example:
READ P, Q
IF P+Q > 100 THEN
PRINT 'LARGE'
END IF
IF P>50
PRINT 'P Is Greater'
END IF

Draw flow diagram for this code:

Statement coverage: We need 1 test case to cover all the statements in the code

Branch/Decision coverage: We need 2 test case to cover all the branches in the code

Path coverage: We need 4 test case to cover all the paths in the code

Thursday, May 19, 2011

Fundamentals of Testing

Software Testing?
Why Software Testing is necessary?
Software Test process
Software Testing techniques
Testing mindset

Wednesday, May 18, 2011

Defect / Bug / Fault

Defect is deviation from expected. When expected result, specified in the test case, does not match with the actual result then we call it defect.

Thursday, April 14, 2011

Black-box and White-box Testing

Black box and white box testing are the testing methods for software verification.

In black box testing, the whole system is treated as black box and user/tester does not has any idea about the inside structure of the system. The user simply enters the input and verifies the output. User refers to the requirements and verifies the results. That is why, it is also called Specifications based testing. Other names for black box testing are: Functional testing, closed-box testing, behavioral testing.


In white box testing, the user/tester is aware of internal structure, algorithm and code of the system. The user tests the software according the knowledge of inside structure of the system and verifies the system. Other names for white box testing are: Structural testing, clear-box testing, glass-box testing.

Software Development Life Cycle - SDLC

Software development life cycle (SDLC) is a systemic process referred to develop software. It usually describes the starting, ending and in-between stages for successful development of the software. There are many different SDLC models used for software development. Every model has its own methodology to investigate requirements, when development and testing will start in the whole process. Here are common types of SDLC models:

  • Waterfall model
  • V - model
  • Agile (Iterative model)

Need of Software Testing

Why software testing is necessary? Why it is required in SDLC?

Answer is:

  • To verify if developed solution meets the requirements
  • To verify the completeness and correctness of the application/system
  • To verify the reliability, usability of the application/system
  • To find defects as early as possible to avoid higher fixing cost at later stages
  • To find maximum number of defects to ensure high quality