TEST CASE DESIGN PART FOUR

Loop Testing

Loops are fundamental to many algorithms. Loops can be categorized as, define loops as simple, concatenated, nested, and unstructured. Loops can be defined in many ways.

To test the loops, following guidelines may be followed:

  1. Simple Loops of size n:

  2. Skip loop entirely

  3. Only one pass through the loop

  4. Two passes through the loop

  5. m passes through loop where m

  6. (n-1), n, and (n+1) passes through the loop. This helps in testing the boundary of the loops.
    • Nested Loops

    • Start with inner loop. Set all other loops to minimum values.

  • Conduct simple loop testing on inner loop.

  • Work outwards and take the next nested loop.

    • Continue until all loops are tested.

  • Concatenated Loops

    • If independent loops, use simple loop testing.

  • If dependent, treat as nested loops.

  • Unstructured loops

    • Don't test - redesign. This is known as poor design.

Black Box Testing

Functional tests examine the observable behavior of software as evidenced by its outputs, without any reference to internal functions. This kind of tests is from the user point of view, which means as if the user is testing as in the normal business functions.

  1. · Black box tests normally determine the quality of the software. It is an advantage to create the quality criteria from this point of view from the beginning.

· In black box testing, software is subjected to a full range of inputs and the outputs are verified for its correctness. Here, the structure of the program is immaterial.

· Black box testing technique can be applied once unit and integration testing is completed.

· It focuses on functional requirements.

· It is compliment to the white box testing.

The main objective of the black box testing is to find:

  1. incorrect or missing functions

  2. interface errors

  3. errors in data structures or external database access

  4. performance errors

  5. initialization and termination errors.

Some of the techniques used for black box testing are discussed below:

Equivalence Partitioning

The main objective of this method is to partitioning the input so that an optimal input data is selected. Steps to be followed are:

1. Divide the input domain into classes of data for which test cases can be generated.

2. Attempting to uncover classes of errors, if any.

3. Identify the both right and wrong input data while partitioning the data.

4. Test the program for all types of data.

Based on equivalence classes for input conditions.

An equivalence class represents a set of valid or invalid states

An input condition is either a specific numeric value, range of values, a set of related values, or a boolean condition.

Equivalence classes can be defined by:

  • If an input condition specifies a range or a specific value, one valid and two invalid equivalence classes defined.

  • If an input condition specifies a boolean or a member of a set, one valid and one invalid equivalence classes defined.

Test cases for each input domain data item developed and executed.

This method uses less number of input data compare to exhaustive testing. However, the data for boundary values are not considered.

This method though reduces significantly the number of input data to be tested, it does not test the combinations of the input data.

RELATED POST


INTEGRATION TESTING PART ONE

INTEGRATION TESTING PART TWO

INTEGRATION TESTING PART THREE

INTEGRATION TESTING PART FOUR

INTEGRATION TESTING PART FIVE

INTEGRATION TEST STANDARDS

INTEGRATION TEST STANDARDS PART TWO

QUALITY TESTING

QUALITY ASSURANCE

QUALITY ASSURANCE PART TWO

QUALITY ASSURANCE SQA

QUALITY OF DESIGN OF TEST CASE

QUALITY MANAGEMENT IN SOFTWARE TESTING

TOOLS FOR QUALITY MANAGEMENT

STATICAL QUALITY ASSURANCE

ISO APPROACH TO QUALITY TESTING

No comments:

Post a Comment