4. the software development process - testing
TRANSCRIPT
![Page 1: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/1.jpg)
Testing
![Page 2: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/2.jpg)
TestingSoftware development costs will vary from project to project. An indication of costs at different stages of the process are shown below
![Page 3: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/3.jpg)
Testing Testing begins at the analysis and design stages,
with prototypes being developed
It is much more cost effective to fix problems at earlier stages of the software development process
![Page 4: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/4.jpg)
Testing – common errorsErrors during detailed design stage
Incorrect interpretation of specification
Incomplete logic
Not thought of all special cases
Poor error handling
Bad time planning
![Page 5: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/5.jpg)
Testing – common errorsErrors during coding stage
Syntax errors
Initialisation errors
Confusion of parameters
Errors in loop counters
Incorrect handling of a decision
Multiple or non-definition of variables
Errors in writing variable names
Incorrect declaration of type and dimensions
![Page 6: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/6.jpg)
Testing – common errorsErrors during translation
Compiler errors
Confusion of library names
![Page 7: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/7.jpg)
Testing – exercisesComplete exercises on testing
Testing Exercise 1
Testing Exercise 2
![Page 8: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/8.jpg)
Test dataSelecting appropriate test data sets is important
Expected results should be known in advance (so the actual output can be checked against expected output)
![Page 9: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/9.jpg)
Test Data SetsNormal Data
A normal data set should be tested to show that the program works as expected.
![Page 10: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/10.jpg)
Test Data SetsBoundary Data Sets (Extreme Data)
A boundary data set is used to test the boundary limits within a program.
![Page 11: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/11.jpg)
Test Data SetsExceptional Data (Out of Range Data)
Exceptional data is used to test that the program can properly handle unexpected inputs.
![Page 12: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/12.jpg)
Phases of testing1. Procedure / Module Testing
Individual code procedures and modules tested
2. Integration TestingTest the modules work together
3. System TestingTest overall system
4. Acceptance TestingCustomer tests program against their specification
5. Alpha and Beta TestingPut the software out to users to test
![Page 13: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/13.jpg)
Who tests? Initially, tests are carried out by the development team
Acceptance testing is carried out by the client
The final alpha and beta test are carried out by a select band of users. It is becoming common for software beta programs to be freely downloadable
![Page 14: 4. The Software Development Process - Testing](https://reader034.vdocuments.mx/reader034/viewer/2022052523/555774a8d8b42a94728b579e/html5/thumbnails/14.jpg)
Testing removes all bugs...
...wrong!
Testing can only convince us of the presence of errors, and not of their absence.
Testing can never prove conclusively that a program is correct. No matter how exhaustive the testing, it will always be possible for the system to contain errors which have not been detected.