Test case design & implementation

The main objective with test case design is to identify the different test cases or scenarios for every software build. These cases shall describe the test procedures and how to perform the test in order to reach the goal of each case. The design of test cases is based on what is to be tested. Features to be tested often present a unique need and the testing should be done in small sections to cope with the differences in test case design that occur due to this.

Both data input and user actions should be done in ways that test the designed logic so that we get answers to the questions; do we get the expected answer.

When creating tests based on the test cases, certain objectives should be addressed.

  • Make your tests as reusable as possible
  • Make your tests easy to maintain
  • Use existing tests when possible

Test execution & evaluation

When running your tests, the results have to be taken care of in a defined manner. Was the test completed or did it halt. Are the results of the test the expected ones and how can it be verified that the results originate from a correct run of a test.

When the actual results from a test do not match the expected, certain actions have to be taken. The first is to determine why the actual and the expected results differ. Does the error lie in the tested application or e.g. the test script?

During the process of development and testing of software, many changes will surely be made to the software as well as its environments. When such changes are made, there will be a need to assure that the program still functions as required. This kind of testing is called regression testing. The difference between a re-test and regression test is that the latter is done when changes has been made to the program regarding, for example, its functionality, whereas re-test is done to test the software after bug fixing.

Test phases:

As the testing process should be viewed as parallel with the development, it will go through certain phases. describe the test process as consisting of the following phases:

  • Unit testing
  • Integration testing
  • System testing
  • Acceptance testing

Unit testing

Also called module test. The testing done on this stage is on the isolated unit.

Integration testing

When units interact with others, one must assure that the communication between them works. Conflicts often occur when units are developed separately or if the syntax to be used is not communicated in a sufficient way.

System testing

When the system is complete, testing on the system as a whole can commence. Test cases with actual user behaviour can be implemented and non-functional tests, such as usability and performance, may be made.

Acceptance testing

The purpose is to let end users or customers decide whether to accept the system or not. Are the users feeling comfortable with the product and does it perform the activities as required?

No comments:

Post a Comment