Quality Assurance /
Software Testing Training
Types of Testing
Page 2Classification: Restricted
Agenda
• Types of Testing
• Start and Stop of Testing
Page 3Classification: Restricted
Various Types of Testing
Functional testing
• Black box type testing geared to functional requirements of an
application.
• Done by testers.
System testing
• Black box type testing that is based on overall requirements
specifications; covering all combined parts of the system.
End-to-end testing
• Similar to system testing; involves testing of a complete application
environment in a situation that mimics real-world use.
Sanity testing
• Initial effort to determine if a new software version is performing well
enough to accept it for a major testing effort
Regression testing
• Re-testing after fixes or modifications of the software or its
environment
Page 4Classification: Restricted
Acceptance testing
• Final testing based on specifications of the end-user or customer
Load testing
• Testing an application under heavy loads.
• Eg. Testing of a web site under a range of loads to determine, when the
system response time degraded or fails.
Install/uninstall testing
• Testing of full,partial or upgrade install/uninstall process.
Recovery testing
• Testing how well a system recovers from crashes, HW failures or other
problems.
Compatibility testing
• Testing how well software performs in a particular HW/SW/OS/NW
environment
Exploratory testing / ad-hoc testing
• Informal SW test that is not based on formal test plans or test cases;
testers will be learning the SW in totality as they test it.
Page 5Classification: Restricted
Performance testing
Term often used interchangeably with ‘stress’ and ‘load’ testing. To check
whether system meets performance requirements. Used different
performance and load tools to do this.
Usability testing
User-friendliness check. Application flow is tested, Can new user understand
the application easily, Proper help documented whenever user stuck at any
point. Basically system navigation is checked in this testing .
Security testing
Can system be penetrated by any hacking way. Testing how well the system
protects against unauthorized internal or external access. Checked if system,
database is safe from external attacks.
Alpha testing
Testing done when development is nearing completion; minor design
changes may still be made as a result of such testing.
Beta-testing
Testing when development and testing are essentially completed and final
bugs and problems need to be found before release.
Page 6Classification: Restricted
Start and Stop of Testing
• When to Start Testing?
• An early start to testing reduces the cost, time to rework and error free
software that is delivered to the client. However in Software Development
Life Cycle (SDLC) testing can be started from the Requirements Gathering
phase and lasts till the deployment of the software.
• For example in Water fall model formal testing is conducted in the Testing
phase, but in incremental model, testing is performed at the end of every
increment/iteration and at the end the whole application is tested.
• When to Stop Testing?
• Unlike when to start testing it is difficult to determine when to stop testing,
as testing is a never ending process and no one can say that any software is
100% tested.
• Following are the aspects which should be considered to stop the testing:
• Testing Deadlines.
• Completion of test case execution.
• Completion of Functional and code coverage to a certain point.
• Bug rate falls below a certain level and no high priority bugs are
identified.
• Management decision.
Page 7Classification: Restricted
Thank You

Types of Testing

  • 1.
    Quality Assurance / SoftwareTesting Training Types of Testing
  • 2.
    Page 2Classification: Restricted Agenda •Types of Testing • Start and Stop of Testing
  • 3.
    Page 3Classification: Restricted VariousTypes of Testing Functional testing • Black box type testing geared to functional requirements of an application. • Done by testers. System testing • Black box type testing that is based on overall requirements specifications; covering all combined parts of the system. End-to-end testing • Similar to system testing; involves testing of a complete application environment in a situation that mimics real-world use. Sanity testing • Initial effort to determine if a new software version is performing well enough to accept it for a major testing effort Regression testing • Re-testing after fixes or modifications of the software or its environment
  • 4.
    Page 4Classification: Restricted Acceptancetesting • Final testing based on specifications of the end-user or customer Load testing • Testing an application under heavy loads. • Eg. Testing of a web site under a range of loads to determine, when the system response time degraded or fails. Install/uninstall testing • Testing of full,partial or upgrade install/uninstall process. Recovery testing • Testing how well a system recovers from crashes, HW failures or other problems. Compatibility testing • Testing how well software performs in a particular HW/SW/OS/NW environment Exploratory testing / ad-hoc testing • Informal SW test that is not based on formal test plans or test cases; testers will be learning the SW in totality as they test it.
  • 5.
    Page 5Classification: Restricted Performancetesting Term often used interchangeably with ‘stress’ and ‘load’ testing. To check whether system meets performance requirements. Used different performance and load tools to do this. Usability testing User-friendliness check. Application flow is tested, Can new user understand the application easily, Proper help documented whenever user stuck at any point. Basically system navigation is checked in this testing . Security testing Can system be penetrated by any hacking way. Testing how well the system protects against unauthorized internal or external access. Checked if system, database is safe from external attacks. Alpha testing Testing done when development is nearing completion; minor design changes may still be made as a result of such testing. Beta-testing Testing when development and testing are essentially completed and final bugs and problems need to be found before release.
  • 6.
    Page 6Classification: Restricted Startand Stop of Testing • When to Start Testing? • An early start to testing reduces the cost, time to rework and error free software that is delivered to the client. However in Software Development Life Cycle (SDLC) testing can be started from the Requirements Gathering phase and lasts till the deployment of the software. • For example in Water fall model formal testing is conducted in the Testing phase, but in incremental model, testing is performed at the end of every increment/iteration and at the end the whole application is tested. • When to Stop Testing? • Unlike when to start testing it is difficult to determine when to stop testing, as testing is a never ending process and no one can say that any software is 100% tested. • Following are the aspects which should be considered to stop the testing: • Testing Deadlines. • Completion of test case execution. • Completion of Functional and code coverage to a certain point. • Bug rate falls below a certain level and no high priority bugs are identified. • Management decision.
  • 7.