What is specification based testing? What are its advantages and disadvantages?

Specification testing as its name suggests can be defined as the type of testing in which the software product’s performance and conformance is checked with every statement mentioned in all the available documents for reference.

- This specification based testing is carried out by specification based tester.
- The documents used for specification based checking might be user manuals, formal specifications check lists, third party documents or even advertisements.
- Specification based testing ought not to cover automatic extraction of ideas of testing from the mentioned specifications and it also not covers the use of the automated program comprehension tools.
- While carrying out the specification based testing an assumption is made in which we assume that a natural language specification exists that is to be analyzed by a human being.

The following tasks are carried out by specification tester:
- To identify the sets of reference 3 documents.
- To develop the ideas for testing those are based on contradictions and ambiguities in the documents that are being used for reference.
- To develop the list of claims and items that are to be tested based on certain assertions to be tested and are listed in the reference documents. Later the ideas are associated with each other.
- To create the matrices that are traceable and that lists the assertions and the items to be tested and test cases associated with those assertions and ideas.

One of the most important unifying features of specification based testing is that the testing starts with the reference documents and the testing strategies and cases are based on what is there in the reference documents.

The following examples will make the use of specification based testing clear:

- Undo tool in paint: does not performs as specified.
- Zoom in tool in open office presentation: does not perform as specified.
- File and folder naming function in windows XP does not perform as specified.
- New profile creation tool in fire fox.
- Function for deleing form information tool.
- Help documentations are incorrect.
- Keyboard short cuts for closing windows.
- Conflict between the dream weaver and inbox manual.

The specification based testing has got both advantages and disadvantages.

- Specification based testing though being necessary is not sufficient to guard or detect certain risks.
- One of the advantages of specification based testing is that it reduces the number of test cases.
- It proves very efficient in find most of the comer cases.

- Though the bugs discovered are very small, the cannot be discovered by testing in the real system since the command sequences that have lead to these bugs would have never been caused in the real system.

- Specification based testing states the specifications as the executable properties.
- Errors can either be in the program or in the specifications.

- Specification based testing can be defined as a process that tests a software system or application based on what its behavior should be based on its specifications.

- In specification based testing, test cases are developed based on the specifications of the software system or application.

- Tests can be developed even before the actual creation of the program and its implementation.

- Without actually writing the program, a set of input data for testing can be generated based only on the given specifications and without even knowing the implementation of the test cases.

- This generated test data will be sufficient to test a software system or program that would have been written in accordance with these specifications.

- If the specifications seem to be incomplete, the assumptions can be stated about how the specifications can be clarified and completed.


Popular posts from this blog



HSC Exam Time Table 2013 Arts, Commerce, Science