Home arrow Practices arrow Page 3 - The Art Of Software Development (part 4): Delivering Quality

Casing The Joint - Practices

Just writing code isn't enough - you also need to test itthoroughly before you release it to a customer. This article discussesthe testing phase of the software development cycle, providing you withan overview of test cases and testing processes, together with adiscussion of how to go about documenting your software in a clear andconcise user manual.

  1. The Art Of Software Development (part 4): Delivering Quality
  2. Code To Zero
  3. Casing The Joint
  4. A Man With A Plan
  5. Bug-bustin'
  6. The Write Stuff
  7. Endgame
By: icarus, (c) Melonfire
Rating: starstarstarstarstar / 4
September 24, 2002

print this article


In order to verify the integrity and functionality of the software, itis necessary to first develop a series of test cases that produce apositive or negative result depending on whether or not the softwarefunctions as advertised. In order to avoid bias, these test cases shouldbe developed by an independent quality assurance team, and should focuson verifying the functionality and integrity of the software against thevarious line items in the requirements document.

Typically, a test case contains the following information:
  1. Overview: This introductory section contains a brief description ofthe purpose of this test case - for example, "calculating total cost ofitems in shopping cart."
  2. Input: This section contains a description of the data that is to beinput into the system, with samples if necessary. Make it a point toavoid including specific test values in this section.
  3. Output: This section contains a description of expected output fromthe system or module.
  4. Procedure: This section contains a list of the steps to be followedto execute the test.
  5. Evaluation criteria: This section lists the criteria necessary todetermine if the test was a success or a failure.
  6. Results: Added once the test is complete. This section records theactual results observed by the tester while performing the test,together with a pass or fail notice.
Since test cases have a direct impact on the overall quality of thesoftware that is being released, due attention should be paid to makingthem as stringent as possible. Here are a few tips to keep in mind whendesigning a test case:
  • Ensure that each requirement defined in the requirements specificationhas one or more test cases linked to it. If you have a requirementstraceability matrix, this task becomes much easier.
  • Ensure that the test case checks for both boundary and average inputvalues.
  • Ensure that the test case checks for input of incorrect data type.
  • For highly interactive applications with multiple click-through paths,or applications that accept multiple combinations of data (and datatypes), ensure that the test case checks all combinations.
  • Ensure that the test case contains clearly-defined evaluation criteriafor judging the test a success or failure.
  • Learn from the past. Use knowledge of previous errors in similarprojects to make your test cases more effective.
The various test cases for each phase of the testing process ultimatelyget compiled into a comprehensive test plan. Let's take a look at thatnext.

>>> More Practices Articles          >>> More By icarus, (c) Melonfire

blog comments powered by Disqus
escort Bursa Bursa escort Antalya eskort


- Calculating Development Project Costs
- More Techniques for Finding Things
- Finding Things
- Finishing the System`s Outlines
- The System in So Many Words
- Basic Data Types and Calculations
- What`s the Address? Pointers
- Design with ArgoUML
- Pragmatic Guidelines: Diagrams That Work
- Five-Step UML: OOAD for Short Attention Span...
- Five-Step UML: OOAD for Short Attention Span...
- Introducing UML: Object-Oriented Analysis an...
- Class and Object Diagrams
- Class Relationships
- Classes

Developer Shed Affiliates


Dev Shed Tutorial Topics: