Abstract: The present disclosure describes a method and system for plotting a message sequence as a ladder diagram in a test case. It provides a quick view of even exhaustive test sequences involving a multitude of messages being exchanged between the participating entities. The representation in the form of a ladder diagram aids in associating the various entities and the messages associated with them in one view. It aids in quick debugging and interpreting the result of a test case and helps in quick and effective analysis. The invention may be applied in protocol development and testing and in message based debugging testing. FIG 1
METHOD AND SYSTEM FOR PLOTTING A MESSAGE SEQUENCE AS A LADDER DIAGRAM IN A
TEST CASE
FIELD OF THE DISCLOSURE
The present disclosure generally pertains to a tool for effectively testing and debugging applications. More specifically, the disclosure relates to a method and system for analyzing test case sequences in message based testing and representing the messages exchanged in the form of a ladder diagram
BACKGROUND OF THE DISCLOSURE
Testing and debugging applications play a very important role in the development of a product. They are very useful in determining whether a device fulfills the objective it is created for in the manner it is configured to and if it achieves the efficiency level expected from it. However the procedure for analyzing these aspects is can be performed at various levels and from different perspectives making it a very elaborate procedure.
Several testing and debugging applications exist which help a user find errors in the device under test by simulating test cases on it. However most of these do not sufficiently depict the results in a user friendly manner that makes it easy for a user to analyze the results of a test case. Additionally, most testing and analysis tools are for protocol-based testing and are not applicable for message based applications.
Further, most testing applications do not provide the results in a user-friendly manner which enables the user to quickly understand the results of a test case. It is also not possible to clearly identify the point at which an error has occurred with related details or to share or save the results for an extended analysis.
Therefore, there is a need in the art for a testing tool which provides an effective and user-friendly view of test results to enable easy analysis. It must also allow saving the results or sharing them across.
SUMMARY AND OBJECTIVES OF THE DISCLOSURE
The present disclosure describes a system for plotting a message sequence as a ladder diagram in a test case for a device comprising one or more reference hosts for simulating one or more entities communicating with said device in said test case, one or more message logs for capturing the messages exchanged between said device and said one or more reference hosts during said test case and attaching a time-stamp to each said message, one or more master summary files for storing the details of said device and said one or more entities, plotting means for constructing a ladder diagram based on the messages recorded in said message log and display means for presenting the constructed ladder diagram depicting said device and said entities as vertical lines and the exchange of messages as directional horizontal arrows between them based on said time-stamp
The present disclosure also discloses a method for plotting a message sequence as a ladder diagram in a test case for a device comprising the steps of simulating one or more entities participating in the test case as a reference host, capturing the messages exchanged between said device and said reference host during said test case for each said entity, attaching a time-stamp to each said message, receiving the details of said device and said one or more entities as a master summary file, plotting vertical lines to represent said device and each said entity, plotting the captured messages based on their time stamp as directional horizontal arrows between vertical lines depicting the corresponding entity and said device to form a ladder diagram and displaying the formed ladder diagram
BRIEF DESCRIPTION OF THE DRAWINGS
Some embodiments are described in greater details with reference to the accompanying figures:
Figure 1 depicts an exemplary method in the form of a flowchart in accordance with a primary embodiment of the invention
- Figure 2 shows an exemplary system in which aspects of the disclosed embodiments can be used
DETAILED DESCRIPTION OF THE DRAWINGS
Specific exemplary embodiments of the invention now will be described with reference to the accompanying drawings. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. The terminology used in the detailed description of the particular exemplary embodiments illustrated in the accompanying drawings is not intended to be limiting of the invention. In the drawings, like numbers refer to like elements.
As will be appreciated by one of skill in the art, the present invention may be embodied as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, a software embodiment or an embodiment combining software and hardware aspects all generally referred to herein as a "circuit" or "module." Furthermore, the present invention may take the form of a computer program product on a computer-usable storage medium having computer-usable program code embodied in the medium. Any suitable computer readable medium may be utilized including hard disks, CD- ROMs, optical storage devices, a transmission media such as those supporting the Internet or an intranet, or magnetic storage devices.
Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein
FIGURE 1 depicts an exemplary method in the form of a flowchart in accordance with a primary embodiment of the invention. In this regard, each block may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that in other implementations, the function(s) noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially
concurrently or the blocks may sometimes be executed in the reverse order, depending on the functionality involved.
In step 101, the test case to be run is selected and the process is initiated by setting the parameters of the device to be tested to the test case specific parameters. Next, in step 102, a list of participating entities is prepared and one of them is selected for each run. A reference host is then configured to emulate the selected entity for communicating with the device during the test case run.
In step 103, the selected test case is run for the device and the reference host and the messages exchanged between these are recorded sequentially in step 104. In a preferred embodiment, each message is stored in the form of data sent or received by the reference host. Each test case is run for the device in communication with only one entity simuiated by the reference host. In an embodiment, only selected messages or those fulfilling a specified condition are recorded.
In a preferred embodiment, all the different entities the device interfaces with are simulated by the reference host for each test case run and the messages exchanged by each of them with the device during the test case are logged separately as described above.
Each message corresponds to an entity. In a preferred embodiment, the message starts with a timestamp header. The timestamp header depicts the time at which the message was sent from its source.. In a preferred embodiment, the message comprises of several parameters including the message flow direction type, such as, SEND or RECV. In another embodiment, it also comprises of one or more of other parameters such as message size and IP address of the source and/or destination. The message also preferably comprises of content which describes its purpose or function in the test case run.
In step 105, the details of each of the entities and the device under test are stored.
Next, in step 106, the above mentioned stored details are examined to obtain the number of simulated entities for each test case. The total number of entities in the message flow is calculated as one more than the count of the simulated entities to include the device under test in the participants of the test case. Vertical lines are plotted to represent each of the identified entities.
In step 107, the stored messages for each simulated entity along with their timestamps are retrieved and the total number of messages exchanged between them is calculated. Then based on the timestamps, the messages are represented as horizontal directional arrows between each entity and the device under test. Each message is depicted as originating from a vertical line representing the source entity and ending in the vertical line representing the destination entity. In a preferred embodiment, the direction of the arrow is calculated based on which entity is sending the message
In a preferred embodiment, the y-axis of the diagram is formed on the basis of the analysis of the timestamps in the messages. This can be a differential timescale in which X)' corresponds to the first message and the maximum value corresponds to the last message.
In step 108, the plotted ladder diagram is then displayed. In a preferred embodiment, an icon or colour is associated with each test case depicting its status. For example, the colours red, green and black may indicate the status as failed, passed or skipped. In another preferred embodiment, this ladder diagram can also be stored for retrieval at a later stage.
In a preferred embodiment, the entities are represented with the device under test as the default entity along with the other entities as one or more actor entities. Preferably, each entity representation in the ladder diagram comprises of a component depicting the entity name, an icon representing the type of entity and a vertical line representing the presence of the entity in the timescale.
FIGURE 2 shows an exemplary system in which aspects of the disclosed embodiments can be used. Although aspects of the disclosed embodiments will be described with reference to the embodiments shown in the drawings and described below, it should be understood that these aspects could be embodied in many alternate forms of embodiments. In addition, any suitable size, shape or type of elements or materials could be used.
An interface is provided to select a test case to be run on the device to be tested (201) to check its functioning. A reference host (202) is configured to simulate a selected entity from one of the entities (202a, 202b, ... , 202n) the device communicates with while it is functioning. In a preferred embodiment, for each run of the test case, the device (201)
communicates with only one entity (202a, 202b, ... , 202n) simulated by the reference host (202).
A message log (203a, 203b, .,., 203n) is setup and connected to the reference host (202) to sequentially log the messages exchanged between the device (201) and the reference host (202) once the test case is initiated. In a preferred embodiment, each message is stored in the form of data sent or received by the reference host. Each test case is run for the device under test (201) in communication with only one entity (202a, 202b, ..., 202n) simulated by the reference host (202). In an embodiment, only selected messages or those fulfilling a specified condition are recorded in a message log (203a, 203b, ..., 203n)
In a preferred embodiment, all the different entities (202a, 202b, ..., 202n) the device (201) interfaces with are simulated by the reference host (202) for each test case run and a separate message log (203a, 203b, ... , 203n) is created for each of them as described above. Each message log (203a, 203b, ... , 203n) corresponds to the messages exchanged between the device under test (101) and one simulated entity (202a, 202b, ..., 202n)
Each message log (203a, 203b, ..., 203n) contains one or more messages and in a preferred embodiment, each message starts with a timestamp header. The timestamp header depicts the time at which the message was sent from its source. Each message corresponds to a simulated entity (202a, 202b, .., , 202n). In a preferred embodiment, each message recorded in the message log (203a, 203b, ... , 203n) comprises of several parameters including the message flow direction type, such as, SEND or RECV. In another embodiment, it also comprises of one or more of other parameters such as message size and IP address of the source and/or destination. The message also preferably comprises of content which describes its purpose or function in the test case run.
In a preferred embodiment, all created message logs (203a, 203b, ... , 203n) corresponding to one or more of the entities (202a, 202b,..., 202n) are stored at the reference host (202).
The details of each of the entities (202a, 202b, ... , 202n) and the device under test (201) are stored in a master summary file (204) connected to the entities (202a, 202b, ... , 202n) and each of the corresponding message logs (203a, 203b, ..., 203n).
The plotting means (205) receive inputs from each of the message logs (203a, 203b, ... , 203n) and the master summary file (204) and based on this information are configured to obtain the number of simulated entities (202a, 202b, ... , 202n) for each test case and the message logs (203a, 203b, ... , 203n) for each simulated entity (202a, 202b, ... , 202n). The total number of entities (202a, 202b, ... , 202n) in the message flow is calculated as one more than the count of the simulated entities to include the device under test (201) in the participants of the test case. The plotting means (205) are configured to represent these as vertical lines.
For each simulated entity, the plotting means (105) are programmed to calculate the number of messages along with their timestamps. Then based on the timestamps to plot the messages horizontally between each entity (202a, 202b, ..., 202n) and the device under test (201). Each message is represented as a single horizontal directional arrow originating from a vertical line representing the source entity and ending in the vertical line representing the destination entity. In a preferred embodiment, the direction of the arrow is calculated based on which entity is sending the message
In a preferred embodiment, the y-axis of the diagram is formed on the basis of the analysis of the timestamps in the messages. This can be a differential timescale in which x0' corresponds to the first message and the maximum value corresponds to the last message.
The display means (206) are configured to receive the formed ladder diagram from the plotting means (205) and display it. In a preferred embodiment, an icon or colour is associated with each test case depicting its status. For example, the colours red, green and black may indicate the status as failed, passed or skipped. In another preferred embodiment, this ladder diagram can also be stored for retrieval at a later stage.
In a preferred embodiment, the entities (202a, 202b, ... , 202n) are represented with the device under test (201) as the default entity along with the other entities as one or more actor entities. Preferably, each entity representation in the ladder diagram comprises of a component depicting the entity name, an icon representing the type of entity and a vertical line representing the presence of the entity in the timescale.
In the drawings and specification, there have been disclosed exemplary embodiments of the invention. Although specific terms are employed, they are used in a generic and descriptive
sense only and not for purposes of limitation, the scope of the invention being defined by the following claims
We claim:
1. A system for plotting a message sequence as a ladder diagram for a test case in testing a device comprising;
one or more reference hosts for simulating one or more entities communicating with said device in said test case
- one or more message logs for capturing the messages exchanged between said device and said one or more reference hosts during said test case and attaching a time-stamp to each said message
- one master summary file for storing the details of said device and said one or more entities
- plotting means for constructing a ladder diagram based on the messages recorded in said message log
- display means for presenting the constructed ladder diagram depicting said device and said entities as vertical lines and the exchange of messages as directional horizontal arrows between them based on said time-stamp.
2. A system as claimed in claim 1, wherein said messages are stored in the form of messages sent and received by said reference host.
3. A system as claimed in claim 1 or 2, wherein atleast one of said message logs is stored at said reference host.
4. A system as claimed in claim 1, wherein each said message log corresponds to one of said entities.
5. A system as claimed in claim 1, wherein said master summary file corresponds to one or more test cases.
6. A system as claimed in claim 1, wherein said timestamp depicts the time of origination of the associated message.
7. A system as claimed in claim 1 or 6, wherein each said message comprises a message flow direction type depicting if the message has been sent or received.
8. A system as claimed in claim 1, wherein each said message corresponds to one of said reference hosts and said device.
9. A system as claimed in claim 1, wherein said ladder diagram indicates the status of said test case.
10. A system as claimed in claim 1, wherein said ladder diagram indicates the location and details of an error in the test case.
11. A method as claimed in claim 1, wherein the directional horizontal arrow further depicts information related to the message exchanged.
12. A method for plotting a message sequence as a ladder diagram for a test case in testing a device comprising:
simulating one or more entities participating in the test case as a reference host - capturing the messages exchanged between said device and said reference host during said test case for each said entity attaching a time-stamp to each said message
receiving the details of said device and said one or more entities as a master summary file
plotting vertical lines to represent said device and each said entity plotting the captured messages based on their time stamp as directional horizontal arrows between vertical lines depicting the corresponding entity and said device to form a ladder diagram displaying the formed ladder diagram.
13. A method as claimed in claim 12, wherein said messages are captured in the form of messages sent and received by said reference host.
14. A method as claimed in claim 12 or 13, wherein atleast one of said message are captured and stored at said reference host.
15. A method as claimed in claim 12, wherein messages sent and received by each entity are stored in a message log corresponds to that entity.
16. A method as claimed in claim 12, wherein said master summary file corresponds to one or more test cases.
17. A method as claimed in claim 12, wherein each said timestamp depicts the time of origination of the associated message.
18. A method as claimed in claim 12 or 17, wherein each said message comprises a message flow direction type depicting if the message has been sent or received.
19. A method as claimed in claim 12, wherein each said message corresponds to one of said reference hosts and said device.
20. A method as claimed in claim 12, wherein said ladder diagram indicates the status of said test case.
21. A method as claimed in claim 12, wherein said ladder diagram indicates the location and details of an error in the test case.
22. A method as claimed in claim 12, wherein said directional horizontal arrows depict information related to the message exchanged.
| # | Name | Date |
|---|---|---|
| 1 | 1477-CHE-2010 POWER OF ATTORNEY 06-07-2010.pdf | 2010-07-06 |
| 1 | 1477-CHE-2010-AbandonedLetter.pdf | 2017-07-25 |
| 2 | 1477-CHE-2010 FORM-13 15-07-2010.pdf | 2010-07-15 |
| 2 | 1477-CHE-2010-FER.pdf | 2017-01-17 |
| 3 | abstract 1477-che-2010.jpg | 2011-09-03 |
| 3 | 1477-CHE-2010 FORM-1 15-07-2010.pdf | 2010-07-15 |
| 4 | Form-1.pdf | 2011-09-03 |
| 4 | 1477-CHE-2010 FORM-9 08-09-2010.pdf | 2010-09-08 |
| 5 | 1477-che-2010 form-1 13-09-2010.pdf | 2010-09-13 |
| 5 | Priority Document.pdf | 2011-09-03 |
| 6 | 1477-CHE-2010 FORM-18 15-11-2010.pdf | 2010-11-15 |
| 7 | 1477-che-2010 form-1 13-09-2010.pdf | 2010-09-13 |
| 7 | Priority Document.pdf | 2011-09-03 |
| 8 | 1477-CHE-2010 FORM-9 08-09-2010.pdf | 2010-09-08 |
| 8 | Form-1.pdf | 2011-09-03 |
| 9 | 1477-CHE-2010 FORM-1 15-07-2010.pdf | 2010-07-15 |
| 9 | abstract 1477-che-2010.jpg | 2011-09-03 |
| 10 | 1477-CHE-2010-FER.pdf | 2017-01-17 |
| 10 | 1477-CHE-2010 FORM-13 15-07-2010.pdf | 2010-07-15 |
| 11 | 1477-CHE-2010-AbandonedLetter.pdf | 2017-07-25 |
| 11 | 1477-CHE-2010 POWER OF ATTORNEY 06-07-2010.pdf | 2010-07-06 |
| 1 | Search_21-12-2016.pdf |