Automatic test environment for communications protocol software
Abstract
A test system and method are disclosed for testing a communications protocol software implementation or combination of communications protocol software implementations. The test system has a memory for storing a communications protocol software implementation of a particular layer in a hierarchy of protocols. The test system has a processor for catching data outputted from the communications protocol software implementation to upper and lower layer communications protocol software. The processor is also for interpreting each frame contained in a test case file. In response to interpreting an input data frame, the processor feeds input data contained in the input data frame to the communications protocol software implementation. In response to interpreting an output data frame, the processor compares received data outputted from the communications protocol software implementation with expected output data interpreted from the output data frame, and generates a message depending on this comparison. Furthermore, the processor may simultaneously monitor the execution of the communications protocol software implementation and generate a wake-up message if the communications protocol software implementation properly or unexpectedly ceases execution. In response to receiving a wake-up message, the processor writes an appropriate message in a test report file.
Claims
exact text as granted — not AI-modifiedWe claim:
1. In a test system having a memory and a multi-tasking processor, a method for testing a communications protocol software implementation, of a particular layer in a hierarchy of protocols, stored in said memory, said multi-tasking processor contemporaneously executing said communications protocol software implementation, a pre-defined and pre-programmed tester process and a wake-upper process, said tester process comprising the steps of: using said processor, catching data outputted from said communications protocol software implementation to upper and lower layer communications protocol software, using said processor, interpreting each frame of a sequence of frames, which sequence includes input data frames and output data frames, in response to said processor interpreting an input data frame in said step of interpreting, using said processor to feed input data contained in said input data frame directly to said communications protocol software implementation, and in response to said processor interpreting an output data frame in said step of interpreting, using said processor to compare output data contained in said output data frame with corresponding output data received in said step of catching, and said wake-upper process comprising: using said processor, generating a single wake-up message for receipt by said tester process in said step of catching contemporaneously with said execution of said tester process and said execution of said communications protocol software implementation, wherein said processor is preliminarily programmed in a predetermined manner to select execution priorities of each process executing thereon in relation to each other so that said processor executes said wake-upper process only when said communications protocol software implementation has ceased executing completely and when said processor waits during said step of catching to receive data outputted from said communication protocol software implementation or said tester process, said tester process being preliminarily programmed in a predetermined manner for receiving said single wake-up message and determining that said communication protocol software implementation has unexpected ceased execution if said single wake-up message is received during said step of catching after said processor interpreted an output frame and said tester process determining that said communication protocol software implementation has properly ceased execution if said single wake-up message is received during said step of catching after the last frame is interpreted in said step of interpreting.
2. The process of claim 1 wherein said step of generating wake-up messages further comprises the step of, if said communications protocol software implementation unexpectedly ceases execution, generating a wake-up message indicating that said communications protocol software implementation has unexpectedly ceased execution.
3. The process of claim 1 wherein said step of generating wake-up messages further comprises the step of, after said processor interprets each frame in a test case file, generating a wake-up message indicating that said communications protocol software implementation has completed processing.
4. The process of claim 1 further comprising the step of, using said processor, electronically generating an error message in response to electronically receiving data outputted from said communications protocol software implementation instead of a wake-up message after said processor interprets each frame in said sequence of frames.
5. The process of claim 1 further comprising prior to said step of interpreting, the step of arranging said input data frames and said output data frames to form said sequence in which said processor interprets said frames in said step of interpreting to simulate expected requests and responses transmitted between said communications protocol software implementation and said upper and lower layer communication protocol software in a particular test.
6. The process of claim 1 wherein said test system further comprises a disk memory and wherein said process further comprises the step of storing said predetermined sequence of frames in a test case file in said disk memory.
7. The process of claim 1 further comprising the step of in response to interpreting a SET frame, using said processor for storing a definite number in an auto-variable.
8. The process of claim 1 further comprising the step of in response to interpreting a GOTO frame, using said processor for resuming interpretation of said frames at a particular frame in said sequence of frames identified by a label contained in said GOTO frame.
9. The process of claim 1 wherein at least one of said frames contains at least one byte of unspecified value wherein said byte of unspecified value is ignored by said processor when interpreting said frames.
10. The process of claim 1 wherein said test system maintains one or more auto-variables.
11. The process of claim 1 wherein said step of comparing further comprises the step of generating test report messages depending on data received in said step of catching.
12. The process of claim 1 wherein said processor successively interprets a plurality of sequences of frames.
13. The process of claim 1 further comprising the step of in response to interpreting an output data frame, using said processor for storing data outputted from said communications protocol software implementation in an auto-variable.
14. A test system for testing a communications protocol software implementation comprising: a memory for storing a communications protocol software implementation, and a multi-tasking processor for executing said communications protocol software implementation, of a particular layer in a hierarchy of protocols, stored in said memory, for contemporaneously therewith, executing a pre-defined and pre-programmed tester process including using said processor: for catching data outputted form said communications protocol software implementation to upper and lower layer communications protocol software, for interpreting each frame of a sequence of frames which sequence includes input data frames and output data frames, for, in response to interpreting an input data frame, feeding input data contained in said input data frame directly to said communications protocol software implementation, for, in response to interpreting an output data frame, comparing output data contained in said output data frame with corresponding output data received by said processor from said communications protocol software implementation, and, contemporaneously with executing said communications protocol software implementation and said tester process, for executing a wake-upper process including using said processor for generating a single wake-up message for receipt by said tester process in said step of catching contemporaneously with said execution of said tester process and said execution of said communications protocol software implementation, wherein said processor is preliminarily programmed in a predetermined manner to select execution priorities of each process executing thereon so that said processor executes said wake-upper process only when said communications protocol software implementation has ceased executing completely and when said processor waits during said step of catching to receive data outputted from said communications protocol software implementation of said tester process, and wherein said tester process is preliminarily programmed in a predetermined manner for receiving said single wake-up message and determining that said communications protocol software implementation has unexpectedly ceased execution if said single wake-up message is received during said step of catching after said processor interpreted an output frame and said tester process determining that said communication protocol software implementation has properly ceased execution if said single wake-up message is received during said step of catching after the last frame is interpreted in said step of interpreting.
15. The system of claim 14 wherein said step of monitoring further comprises generating wake-up messages only when both said communications protocol software implementation and said tester process are idle, said wake-up messages to be received by said processor while catching output data from said communications protocol software implementation.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.