Elusive Bugs, Bounded Exhaustive Testing and Incomplete Oracles

The system transmits blocks of N signal values preceded by block code words which are used at the receiver to detect errors. In the transmitter, the digital value of the intelligence signal being transmitted is sent to a predictor, a comparator, and an N-word delay line. The predictor estimates the next signal value, which is suitably delayed so that the current value and its estimate may be compared. The comparator subtracts each estimated value from the corresponding actual value, temporarily storing the difference, called a "delta value," while the entire block of N words is processed. A "Maximum Delta Encoder" encodes (with appropriate error correction) the absolute value of the maximum delta value for all N words. The resulting block code word is multiplexed into the data channel ahead of the group of N words to which it corresponds. An "N Sample Delay" is used to delay the N words so that the block code word will precede it. In the receiver, the block code word is demultiplexed and error corrected to recover the absolute value of the maximum delta value for the group of N words which follow. As each of the N words is received, it is subtracted from a predicted value generated by a predictor circuit identical to the one found in the transmitter. If the difference is greater than the maximum delta value for that block, the received signal value represents an error. The error is then concealed by replacing it with the predicted value itself. If the difference is less than or equal to the maximum delta value, the received signal is accepted as correct.

[1]  Barton P. Miller,et al.  An empirical study of the robustness of Windows NT applications using random testing , 2000 .

[2]  Atif M. Memon,et al.  What test oracle should I use for effective GUI testing? , 2003, 18th IEEE International Conference on Automated Software Engineering, 2003. Proceedings..

[3]  Gary T. Leavens,et al.  A Simple and Practical Approach to Unit Testing: The JML and JUnit Way , 2002, ECOOP.

[4]  Elaine J. Weyuker,et al.  On Testing Non-Testable Programs , 1982, Comput. J..

[5]  Sarfraz Khurshid,et al.  Korat: automated testing based on Java predicates , 2002, ISSTA '02.

[6]  Debra J. Richardson,et al.  TAOS: Testing with Analysis and Oracle Support , 1994, ISSTA '94.

[7]  Sarfraz Khurshid,et al.  Software assurance by bounded exhaustive testing , 2004, IEEE Transactions on Software Engineering.

[8]  William E. Howden,et al.  Superfit Combinational Elusive Bug Detection , 2008, 2008 32nd Annual IEEE International Computer Software and Applications Conference.

[9]  William E. Howden,et al.  Test Frameworks for Elusive Bug Testing , 2007, ICSOFT.

[10]  Rick Mugridge,et al.  Fit for Developing Software: Framework for Integrated Tests (Robert C. Martin) , 2005 .

[11]  William E. Howden,et al.  Functional Program Testing , 1978, IEEE Transactions on Software Engineering.