This document discusses different types of system testing and generic types of testing. It describes system testing as testing the integrated software/hardware product against functional and non-functional requirements. Some types of system testing mentioned include usability testing, load testing, regression testing, and security testing. Acceptance testing aims to evaluate if the system meets user needs and is acceptable for delivery. Generic types of testing include functional testing, which tests system functionality, non-functional testing, which tests system behavior, and regression testing, which re-executes test cases after changes to ensure existing functionality still works properly.
Download as PPTX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
188 views
ST - Lecture6 - Generic Types of Testing
This document discusses different types of system testing and generic types of testing. It describes system testing as testing the integrated software/hardware product against functional and non-functional requirements. Some types of system testing mentioned include usability testing, load testing, regression testing, and security testing. Acceptance testing aims to evaluate if the system meets user needs and is acceptable for delivery. Generic types of testing include functional testing, which tests system functionality, non-functional testing, which tests system behavior, and regression testing, which re-executes test cases after changes to ensure existing functionality still works properly.
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 15
Software Testing
Lecture 6
Generic Testing Types
Chapter 3: Testing in Software Life Cycle
Agenda for today Remaining Levels of Testing System Testing Different Types of System Testing Acceptance Testing Acceptance Testing different Forms Generic Types of Testing Functional Testing Nonfunctional Testing Testing of Software Structure Testing related to changes and regression testing System testing • Testing the behavior of the system as per SRS • Testing of a complete and fully integrated software/hardware product • Investigates both functional and non functional requirements • First level of testing where application is tested as whole. • It is black box testing • Example: Complete Pen Different Types of System Testing • Usability Testing - Focuses on the user's ease to use the application • Load Testing – Checks software solution will perform under real-life loads. • Regression Testing- - Changes made over the course of the development process have caused new bugs • Recovery Testing - Software solution is reliable • Migration Testing - Software can be moved from older system infrastructures to current system infrastructures without any issues. • Functional Testing - To make sure that functionality of the product is working as per the requirements defined • Hardware/Software Testing - Check interaction of software and hardware are they working fine.
• Security Testing: Check system does not allow unauthorize access
What Types of System Testing Should Testers Use? Specific types used by a tester depend on several variables. Those variables include: • Who the tester works for • Time available for testing • Resources available to the tester • Software Tester's Education • Testing Budget Acceptance Testing • Check whether system meets user needs and expectations. • The purpose is to evaluate the system’s compliance with the business requirements and assess whether it is acceptable for delivery. • The goal of acceptance testing is to establish confidence in the system. • Acceptance testing is most often focused on a validation type testing. Forms of Acceptance Testing There are various forms of acceptance testing: • Contract acceptance Testing - Based on criteria and specifications which are predefined and agreed upon in a contract. • User acceptance Testing - Testing a software by the user/client to determine whether it can be accepted or not first organization employees test software • Operational acceptance Testing - Testing assures the acceptance of the system by the system administrators. • Field Testing (alpha and beta testing) - Alpha Testing takes place in development environment - Beta Testing takes place in customer’s enviornement Generic Types of Testing The following types of testing can be distinguished: • Functional Testing - describe the functionality of the software system • Non functional testing - describe the behaviour of the software system etc • Testing of software structure - objective is to design and run enough test cases to completely cover all structural items. • Testing related to changes and regression testing - When changes are implemented, parts of the existing software are changed so regression testing may be performed. Functional Testing • Describe the behaviour/execution of the software system • Functional requirements are the what i.e what the system does • Ensures proper working of all the functionalities of an application • Ensures all the requirements are met • Produces a defect-free product • Analyze integrating pieces of an application • Example: Website to pay utility bills Functional Testing Five steps need to be keeping in mind for functional testing: 1. Preparation of test data based on the specifications of functions 2. Business requirements are the inputs to functional testing 3. Based on functional specifications find out of output of the functions 4. The execution of test cases 5. Observe the actual and expected outputs Non Functional Testing • Emphasizes the behaviour of the product and not the functionality • Non functional testing will answer How. • It increases the ease of use, efficiency, maintainability, and portability of the product. •It helps reducing production risk and the cost associated with non- functional aspects of the product. •Optimize the way the product is installed, configured, executed, managed and monitored. •Improve and enhance the knowledge of the behaviour of the product and its uses. •Example: Website to pay utility bills (application security, page loading) Functional Vs Non Functional Testing with example Testing Related to Changes and Regression Testing • When changes are implemented, parts of the existing software are changed or new modules are added • Regression Testing is nothing but a full or partial selection of already executed test cases which are re-executed to ensure existing functionalities work fine. • How much retest and regression test? 1. Rerunning of all the tests that have detected failures whose reasons have been fixed in the new software release 2. Testing of all program parts that were changed or corrected 3. Testing of all program parts or elements that were newly integrated Testing of the whole system Selection of regression test cases • Repeating only the high-priority tests according to the test plan • In the functional test, omitting certain variations (special cases) • Restricting the tests to certain configurations only • Restricting the test to certain subsystems or test levels Thank you