4. The Software Development Process - Testing


Published on

Published in: Education, Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

4. The Software Development Process - Testing

  1. 1. Testing
  2. 2. Testing Software development costs will vary from project to project. An indication of costs at different stages of the process are shown below
  3. 3. 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
  4. 4. Testing – common errors Errors during detailed design stage  Incorrect interpretation of specification  Incomplete logic  Not thought of all special cases  Poor error handling  Bad time planning
  5. 5. Testing – common errors Errors 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
  6. 6. Testing – common errors Errors during translation  Compiler errors  Confusion of library names
  7. 7. Testing – exercises Complete exercises on testing  Testing Exercise 1  Testing Exercise 2
  8. 8. Test data Selecting appropriate test data sets is important Expected results should be known in advance (so the actual output can be checked against expected output)
  9. 9. Test Data Sets Normal Data A normal data set should be tested to show that the program works as expected.
  10. 10. Test Data Sets Boundary Data Sets (Extreme Data) A boundary data set is used to test the boundary limits within a program.
  11. 11. Test Data Sets Exceptional Data (Out of Range Data) Exceptional data is used to test that the program can properly handle unexpected inputs.
  12. 12. Phases of testing 1. Procedure / Module Testing Individual code procedures and modules tested 2. Integration Testing Test the modules work together 3. System Testing Test overall system 4. Acceptance Testing Customer tests program against their specification 5. Alpha and Beta Testing Put the software out to users to test
  13. 13. 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
  14. 14. 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.