CSC440 Chapter 8: Software Testing {Terms} (Software Engineering, Sommerville, 10th Edition) edit
Development Testing
- AKA Defect Testing, the system is tested to discover bugs and defects - Includes all testing activities that are carried out by the team developing the system - Testing activities include Unit testing, Component testing, and System testing
Elements of: User Testing
- Alpha - Beta - Acceptance
Elements of: Test Driven Development
- Identify - Write - Run - Implement - Repeat
Requirements Based Testing
- Part of Release Testing - Involves examining each requirement and developing a test or tests for it. - Testing what was written up for and documented for the system. - It is validation rather than defect testing: you are trying to demonstrate that the system has properly implemented its requirements.
Performance Testing
- Part of release testing - AKA Stress Testing - Concerned with both demonstrating that the system meets its requirements and discovering problems and defects within the system. - You are testing the system by making demands that are outside the design limitations.
Scenario Testing
- Part of release testing. - An approach to release testing whereby you devise typical scenarios of use and use these scenarios to develop test cases for the system.
User Testing
- Potential users of a system operate the system in their own environment.
Release Testing
- Process of testing a particular release of a system that is intended for use outside of the development team - A separate testing team tests a complete version of the system - Primary goal is to convince the supplier of the system that it is good enough for use. - Usually a black-box testing process where tests are only derived from the system specification.
Elements of: Release Testing
- Requirements - Scenario - Performance
System Testing
- Stage of Development testing - Involves integrating components to create a version of the system and then testing the integrating system - Focus is testing the interactions between components - Checks to ensure that components are compatible, interact correctly, and transfer the right data at the right time. - Might include stress testing
Unit Testing
- Stage of Development testing - Process of testing individual components in isolation. - It is a defect testing process - Components to be tested could be individual functions or methods, object classes, or composite components with defined interfaces used to access their functionality.
Component Interface Testing
- Stage of Development testing - Software components are often composite components that are made up of several interacting objects accessed through defined component interfaces. - This type of testing should then focus on showing that the interface behaves according to its specification. - Objectives are to detect faults due to interface errors or invalid assumptions about interfaces
Beta Testing
- Stage of user testing - A release of the software is made available to users to allow them to experiment and to raise problems that they discover with the system developers.
Acceptance Testing
- Stage of user testing - Customers test a system to decide whether or not it is ready to be accepted from the system developers and deployed in the customer environment. Primarily for custom systems.
Alpha Testing
- Stage of user testing - Users of the software work with the development team to test the software at the developer's site.
Guideline-based Testing
- Test case selection strategy for Unit testing - A set of rules are used to choose test cases - These rules reflect previous experience of the kinds or errors that programmers often make when developing components.
Partition Testing
- Test case selection strategy for Unit testing - Identify groups of inputs that have common characteristics and should be processed in the same way. - Test cases are chosen from these groups
Elements of: Development Testing
- Unit - Component - System
Verification & Validation
- Verification: "Are we building the product right?" - Validation: "Are we building the right product?"