viii - Software testing Flashcards
can only show the presence of errors in a program. It cannot demonstrate that there are no remaining faults.
Testing
is the responsibility of the software development team. A separate team should be responsible for testing a system before it is released to customers. In the user testing process, customers or system users provide test data and check that tests are successful.
Development testing
Development testing includes [1], in which you test individual objects and methods; [2], in which you test related groups of objects; and [3], in which you test partial or complete systems.
- unit testing
- component testing
- system testing
When testing software, you should try to [1] the software by using experience and guidelines to choose types of test cases that have been effective in discovering defects in other systems.
‘break’
Wherever possible, you should write [1]. The tests are embedded in a program that can be run every time a change is made to a system.
automated tests
is an approach to development where tests are written before the code to be tested. Small code changes are made and the code is refactored until all tests execute successfully.
Test-first development
is useful because it replicates the practical use of the system. It involves inventing a typical usage scenario and using this to derive test cases.
Scenario testing
is a user testing process where the aim is to decide if the software is good enough to be deployed and used in its operational environment.
Acceptance testing