Sign In to Follow Application
View All Documents & Correspondence

Automation Testing Of Software Or Device By Simulating Input And Capturing Output

Abstract: ABSTRACT The embodiments herein relate to software or device testing and, more particularly, to automate the testing of software or device by simulating input and capturing output. Initially information on device functionalities of a Device Under Test (DUT) to be tested and related operations of input devices associated with the DUT are captured and control steps corresponding to each of the input device operations are defined and stored in an automation module. Further, so as to test a specific functionality of the DUT, corresponding control steps are sent from the automation module to a sim module. The sim module emulates the device functionality to be executed by generating corresponding control signals. The generated control signals are sent to the DUT. Results of executed functionality are captured using capture cards and are verified against expected results configured with the automation module. FIG. 1

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
02 July 2013
Publication Number
31/2013
Publication Type
INA
Invention Field
PHYSICS
Status
Email
patent@bananaip.com
Parent Application
Patent Number
Legal Status
Grant Date
2020-12-01
Renewal Date

Applicants

HCL Technologies Limited
HCL Technologies Ltd AMB 3.64-66,South Phase,II Main road, Ambattur Industrial estate,Chennai-58

Inventors

1. Sivasakthivel Sadasivam
HCL Technologies Ltd AMB 3.64-66,South Phase,II Main road, Ambattur Industrial estate,Chennai-58

Specification

CLIAMS:CLAIMS

1. A system for automating testing of device functionality, said system comprising:
an automation module;
an input device sim module configured to be in communication with said automation module and a device under test (DUT); and
a plurality of capture cards; wherein said system configured for:
simulating a plurality of device functionalities corresponding to said DUT with said automation module;
executing at least one of said plurality of device functionalities on said DUT by emulating said at least one device functionality using said sim module;
fetching results of said at least one device operation using said capture card; and
verifying functionality of said DUT by analyzing said fetched results using said automation module.
2. The system as in claim 1, wherein said system is configured to simulate said plurality of device functionalities automatically with the automation module.
3. The system as in claim 1, wherein said system is further configured to simulate said plurality of device functionalities with the automation module by:
capturing information on a plurality of device functionalities of said DUT using at least one capture card;
capturing information on a plurality of operations of a plurality of input devices connected to said DUT required to execute said plurality of device functionalities using said capture card; and
defining control steps related to each of said plurality of device functionalities.
4. The system as in claim 1, wherein said sim module is configured to emulate said device functionality by:
fetching information on a plurality of control steps corresponding to said device functionality from said automation module;
generating control signals corresponding to said control steps; and
sending said generated control signals to said DUT.
5. The system as in claim 1, wherein said automation module is further configured to verify said functionality of the DUT by comparing said fetched result with a corresponding expected output of said device functionality.
6. A method for automating testing of device functionality, said method comprises:
simulating a plurality of device functionalities corresponding to a Device Under Test (DUT) with an automation module;
executing at least one of said plurality of device functionalities on said DUT by emulating said at least one device functionality using a sim module;
fetching results of said at least one device operation using a capture card; and
verifying functionality of said DUT by analyzing said fetched results using said automation module.
7. The method as in claim 6, wherein said plurality of device functionalities is automatically configured with said automation module.
8. The method as in claim 6, wherein simulating said plurality of device functionalities with the automation module further comprises:
capturing information on a plurality of device functionalities of said DUT;
capturing information on a plurality of operations of a plurality of input devices connected to said DUT required to execute said plurality of device functionalities; and
defining control steps related to each of said plurality of device functionalities.
9. The method as in claim 6, wherein said emulating said device functionality further comprises:
fetching information on a plurality of control steps corresponding to said device functionality from said automation module;
generating control signals corresponding to said control steps; and
sending said generated control signals to said DUT.
10. The method as in claim 6, wherein verifying said functionality of the DUT further comprises comparing said fetched result with a corresponding expected output of said device functionality.

Dated: 02-07-2013
Signature:

Nishant Kewalramani
Patent Agent
,TagSPECI:FORM 2
The Patent Act 1970
(39 of 1970)
&
The Patent Rules, 2005
COMPLETE SPECIFICATION
(SEE SECTION 10 AND RULE 13)

TITLE OF THE INVENTION

“AUTOMATION TESTING OF SOFTWARE OR DEVICE BY SIMULATING INPUT AND CAPTURING OUTPUT”

APPLICANTS:
Name : HCL Technologies Limited
Nationality : Indian
Address : HCL Technologies Ltd
AMB 3.64-66,South Phase,II Main road,
Ambattur Industrial estate,Chennai-58

The following Specification particularly describes and ascertains the nature of this invention and the manner in which it is to be performed:
FIELD OF INVENTION
[001] The embodiments herein relate to software or device testing and, more particularly, to automate the testing of software or device by simulating input and capturing output.

BACKGROUND
[002] In recent years, software has become major component of many devices and testing software has therefore become more important. Most of the software and device testings happen manually. Software testing happens manually in different windows for different service packs. Even if the automation is present, it will be for a particular environment or for a particular device type. Further, the process of automation needs to be replicated if we want to test other versions or devices with different environment. This involves the risk of modifying the automation environment whenever a new type of device is being tested. For example, most of the Personal Computers run on windows XP or its upgraded versions of operating systems which needs a specific automation environment for testing them. Now the systems which run on MAC need a different automation environment. Furthermore, currently automation testing is performed with software which is installed in the test machine which is going to be tested. This increases the loading on the device under test which ultimately shows effect on functioning of the device.
[003] What is needed therefore is a system and method which automates the software or device testing without overloading the test device with automation tools and which provides a single automation environment for various systems.

SUMMARY
[004] In view of the foregoing, an embodiment herein provides a system for automating testing of device functionality, the system comprising an automation module; an input device sim module configured to be in communication with the automation module and a device under test (DUT); and a plurality of capture cards; wherein the system configured for simulating a plurality of device functionalities corresponding to the DUT with the automation module; executing at least one of the plurality of device functionalities on the DUT by emulating the at least one device functionality using the sim module; fetching results of the at least one device operation using the capture card; and verifying functionality of the DUT by analyzing the fetched results using the automation module.
[005] Embodiments further disclose a method for automating testing of device functionality, the method comprises simulating a plurality of device functionalities corresponding to a Device Under Test (DUT) with an automation module; executing at least one of the plurality of device functionalities on the DUT by emulating the at least one device functionality using a sim module; fetching results of the at least one device operation using a capture card; and verifying functionality of the DUT by analyzing the fetched results using the automation module.
[006] These and other aspects of the embodiments herein will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings.

BRIEF DESCRIPTION OF THE FIGURES
[007] The embodiments herein will be better understood from the following detailed description with reference to the drawings, in which:
[008] FIG. 1 illustrates a general block diagram of Automation testing environment, as disclosed in the embodiments herein;
[009] FIG. 2 illustrates a block diagram that shows various components of Input device sim module, as disclosed in the embodiments herein;
[0010] FIG. 3 is a flow diagram which shows various steps involved in the process of automation testing of software or device, as disclosed in the embodiments herein; and
[0011] FIG. 4 is a flow diagram which shows various steps involved in the process of providing system inputs to Device Under Test (DUT), as disclosed in the embodiments herein.

DETAILED DESCRIPTION OF EMBODIMENTS
[0012] The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein may be practiced and to further enable those of skill in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.
[0013] The embodiments herein disclose a system for automation testing of software or device by simulating input and capturing output. Referring now to the drawings, and more particularly to FIGS. 1 through 4, where similar reference characters denote corresponding features consistently throughout the figures, there are shown embodiments.
[0014] FIG. 1 illustrates a general block diagram of Automation testing environment, as disclosed in the embodiments herein. The system consists of an automation module 101, an input device sim module 102 and a Device Under Test (DUT) 103. The automation module 101 can be any computing device such as PC, mobile, tablet and so on which runs on general operating system such as Windows and is connected to DUT 103 by using any suitable interface. In an embodiment, the interface may be capture cards which are capable of capturing input device information such as video capture card, sound capture cards and so on from DUT 103. Further, the automation module 101 is connected to an Input device sim module 102 by using a suitable interface. The automation module 101 is further programmed with necessary instructions which are required to test the software or device automatically. Furthermore, automation module 101 can send the captured system input information to input device sim module 102 automatically as per the instructions programmed.
[0015] The input device sim module 102 is a customized hardware which emulates the functionalities of input devices (keyboard/mouse) that are connected to the DUT 103. The input device sim module 102 is configured such that it is in communication with other devices present in the automation environment such as automation module 101 and DUT 103 by possessing multiple ports for interfacing. Further, it receives device input parameters from automation module 101. Furthermore, input device sim module 102 is capable of generating the control signals corresponding to specific device functionalities to DUT 103 by using any suitable interface such as USB, NFC or via Bluetooth and so on.
[0016] The Device Under Test (DUT) 103 may be any type of commonly available computing device such as PC, tablet and so on which is capable of having input devices like keyboard and mouse. Further, DUT 103 fetches the control signals for execution from input device sim module 102 through any suitable interface. Furthermore, DUT treats these inputs as normal inputs that are coming from corresponding input device such as mouse, keyboard. Furthermore, DUT 103 is connected to automation module 101 through any suitable interface.
[0017] FIG. 2 illustrates a block diagram that shows various components of Input device sim module, as disclosed in the embodiments herein. The input device sim module 102 further consists of an input device emulator 201, a memory module 202 and a communication interface 203. The input device emulator 201 emulates the input devices which are connected to DUT 103. Further, the input device emulator 201 fetches the input device information from automation module 101. For example, in one case the input device emulator may fetch the input information regarding the specific functioning of mouse such as right click, left click, scroll ball and so on. Furthermore, the fetched input device information will be buffered in a memory module 202 which later given to the DUT 103 through communication interface 203. The communication interface 203 provides a suitable interface for input device emulator 201 to communicate with DUT 103.
[0018] FIG. 3 is a flow diagram which shows various steps involved in the process of automation testing of software or device, as disclosed in the embodiments herein. Initially, the input devices of DUT 103 are to be configured (302) with the automation module 101 through any suitable interface such as capture cards. The input devices are configured by simulating (302) the device input parameters automatically with automation module 101.This simulation can be done by capturing information of device functionalities of DUT 103 along with the information regarding the operations of input devices of DUT. The automation module 101 uses the co-ordinates/virtual objects to simulate the above input parameters through input device sim module 102. Further, control steps are defined related to each device functionality captured. For example if DUT 103 is a computer then the input devices such as keyboard or mouse are configured with the automation module 101. For mouse, the functionalities that are configured may be related to right click, left click, scroll key movement, click sound and so on. In an embodiment, audio and video capture cards may be used for the above mentioned purpose. After capturing the input device functionalities, the automation module 101 provides the system inputs to the DUT 103 through input device sim module 102. Further, the input device sim module 102 emulates and executes (304) the device functionalities accordingly. Further, the automation module 101 fetches the result from DUT 103 through a suitable interface and verifies (306) the result fetched. The verification can be done by using some standard script engines such as OCR (Optical Character Reader) or image capture algorithms which compare the fetched result content with that of the expected output. If the fetched result is same as the expected output, the automation module 101 marks the test result as positive which indicates that device or software which is tested working properly for that particular function. In other case, if the fetched output is different from expected output, then automation module 101 marks the test result for that particular function as negative which indicates that device or software is not working properly. The various actions in method 300 may be performed in the order presented, in a different order or simultaneously. Further, in some embodiments, some actions listed in FIG. 3 may be omitted.
[0019] FIG. 4 is a flow diagram which shows various steps involved in the process of providing system inputs to Device Under Test (DUT), as disclosed in the embodiments herein. After configuring the DUT input devices with automation module 101, the input device sim module 102 fetches (402) the defined control steps corresponding to specific device functionalities. For example, these can be mouse clicks, keyboard key functionalities and corresponding actions included with them. The input device emulator 201 of input device sim module 102 generates (404) control signals corresponding to the fetched specific device functionalities. Further, these are buffered in memory module 202 and finally the corresponding control signals are provided (406) to DUT 103 through communication interface 203. Further, the DUT 103 receives these signals as like they are coming from original input devices and responds accordingly.
[0020] For example, in order to test a ‘calculator application’ which is present in a PC, firstly the functionalities of the mouse and keyboard are pre configured with the automation module 101 through the provided capture cards. Later, the automation module 101 is programmed such that it sends the commands to the input device sim module 102. Further, the input device sim module 102 sends the instructed commands in the following sequence: moving mouse pointer to the left corner, click start button, movie mouse pointer to Run and generate click on run button, typing calc from keyboard sim, activate enter button and capture the display through capture card and verify the calculator is started. The various actions in method 400 may be performed in the order presented, in a different order or simultaneously. Further, in some embodiments, some actions listed in FIG. 4 may be omitted.
[0021] The embodiments disclosed herein can be implemented through at least one software program running on at least one hardware device and performing network management functions to control the network elements. The network elements shown in Fig. 1 to Fig. 2 include blocks which can be at least one of a hardware device, or a combination of hardware device and software module.
[0022] The embodiment disclosed herein specifies a system for automatic testing of software or devices. The mechanism allows a customized input device sim module providing a system thereof. Therefore, it is understood that the scope of the protection is extended to such a program and in addition to a computer readable means having a message therein, such computer readable storage means contain program code means for implementation of one or more steps of the method, when the program runs on a server or mobile device or any suitable programmable device. The method is implemented in a preferred embodiment through or together with a software program written in e.g. Very high speed integrated circuit Hardware Description Language (VHDL) another programming language, or implemented by one or more VHDL or several software modules being executed on at least one hardware device. The hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer, or the like, or any combination thereof, e.g. one processor and two FPGAs. The device may also include means which could be e.g. hardware means like e.g. an ASIC, or a combination of hardware and software means, e.g. an ASIC and an FPGA, or at least one microprocessor and at least one memory with software modules located therein. Thus, the means are at least one hardware means and/or at least one software means. The method embodiments described herein could be implemented in pure hardware or partly in hardware and partly in software. The device may also include only software means. Alternatively, the invention may be implemented on different hardware devices, e.g. using a plurality of CPUs.
[0023] The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments herein have been described in terms of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the claims as described herein.

Documents

Application Documents

# Name Date
1 2931-CHE-2013-RELEVANT DOCUMENTS [20-09-2023(online)].pdf 2023-09-20
1 Form 5.pdf 2013-07-05
2 2931-CHE-2013-RELEVANT DOCUMENTS [20-09-2021(online)].pdf 2021-09-20
2 FORM 3.pdf 2013-07-05
3 FORM 2.pdf 2013-07-05
3 2931-CHE-2013-FORM 13 [09-07-2021(online)].pdf 2021-07-09
4 Drawings.pdf 2013-07-05
4 2931-CHE-2013-POA [09-07-2021(online)].pdf 2021-07-09
5 2931-CHE-2013-Abstract_Granted 352775_01-12-2020.pdf 2020-12-01
5 2931-CHE-2013 FORM-9. 10-07-2013.pdf 2013-07-10
6 2931-CHE-2013-Claims_Granted 352775_01-12-2020.pdf 2020-12-01
6 2931-CHE-2013 FORM-18 10-07-2013.pdf 2013-07-10
7 abstract2931-CHE-2013.jpg 2013-07-30
7 2931-CHE-2013-Description_Granted 352775_01-12-2020.pdf 2020-12-01
8 Form 3 [13-06-2016(online)].pdf 2016-06-13
8 2931-CHE-2013-Drawings_Granted 352775_01-12-2020.pdf 2020-12-01
9 2931-CHE-2013-FER.pdf 2018-12-27
9 2931-CHE-2013-IntimationOfGrant01-12-2020.pdf 2020-12-01
10 2931-CHE-2013-Marked up Claims_Granted 352775_01-12-2020.pdf 2020-12-01
10 2931-CHE-2013-REQUEST FOR CERTIFIED COPY [05-03-2019(online)].pdf 2019-03-05
11 2931-CHE-2013-PatentCertificate01-12-2020.pdf 2020-12-01
11 2931-CHE-2013-Proof of Right (MANDATORY) [07-03-2019(online)].pdf 2019-03-07
12 2931-CHE-2013-FORM-26 [08-04-2019(online)].pdf 2019-04-08
12 2931-CHE-2013-Proof of Right (MANDATORY) [23-01-2020(online)].pdf 2020-01-23
13 2931-CHE-2013-ABSTRACT [19-06-2019(online)].pdf 2019-06-19
13 2931-CHE-2013-RELEVANT DOCUMENTS [19-06-2019(online)].pdf 2019-06-19
14 2931-CHE-2013-CLAIMS [19-06-2019(online)].pdf 2019-06-19
14 2931-CHE-2013-OTHERS [19-06-2019(online)].pdf 2019-06-19
15 2931-CHE-2013-CORRESPONDENCE [19-06-2019(online)].pdf 2019-06-19
15 2931-CHE-2013-FORM 13 [19-06-2019(online)].pdf 2019-06-19
16 2931-CHE-2013-DRAWING [19-06-2019(online)].pdf 2019-06-19
16 2931-CHE-2013-FER_SER_REPLY [19-06-2019(online)].pdf 2019-06-19
17 2931-CHE-2013-FER_SER_REPLY [19-06-2019(online)].pdf 2019-06-19
17 2931-CHE-2013-DRAWING [19-06-2019(online)].pdf 2019-06-19
18 2931-CHE-2013-CORRESPONDENCE [19-06-2019(online)].pdf 2019-06-19
18 2931-CHE-2013-FORM 13 [19-06-2019(online)].pdf 2019-06-19
19 2931-CHE-2013-CLAIMS [19-06-2019(online)].pdf 2019-06-19
19 2931-CHE-2013-OTHERS [19-06-2019(online)].pdf 2019-06-19
20 2931-CHE-2013-ABSTRACT [19-06-2019(online)].pdf 2019-06-19
20 2931-CHE-2013-RELEVANT DOCUMENTS [19-06-2019(online)].pdf 2019-06-19
21 2931-CHE-2013-FORM-26 [08-04-2019(online)].pdf 2019-04-08
21 2931-CHE-2013-Proof of Right (MANDATORY) [23-01-2020(online)].pdf 2020-01-23
22 2931-CHE-2013-PatentCertificate01-12-2020.pdf 2020-12-01
22 2931-CHE-2013-Proof of Right (MANDATORY) [07-03-2019(online)].pdf 2019-03-07
23 2931-CHE-2013-Marked up Claims_Granted 352775_01-12-2020.pdf 2020-12-01
23 2931-CHE-2013-REQUEST FOR CERTIFIED COPY [05-03-2019(online)].pdf 2019-03-05
24 2931-CHE-2013-IntimationOfGrant01-12-2020.pdf 2020-12-01
24 2931-CHE-2013-FER.pdf 2018-12-27
25 Form 3 [13-06-2016(online)].pdf 2016-06-13
25 2931-CHE-2013-Drawings_Granted 352775_01-12-2020.pdf 2020-12-01
26 abstract2931-CHE-2013.jpg 2013-07-30
26 2931-CHE-2013-Description_Granted 352775_01-12-2020.pdf 2020-12-01
27 2931-CHE-2013-Claims_Granted 352775_01-12-2020.pdf 2020-12-01
27 2931-CHE-2013 FORM-18 10-07-2013.pdf 2013-07-10
28 2931-CHE-2013-Abstract_Granted 352775_01-12-2020.pdf 2020-12-01
28 2931-CHE-2013 FORM-9. 10-07-2013.pdf 2013-07-10
29 Drawings.pdf 2013-07-05
29 2931-CHE-2013-POA [09-07-2021(online)].pdf 2021-07-09
30 FORM 2.pdf 2013-07-05
30 2931-CHE-2013-FORM 13 [09-07-2021(online)].pdf 2021-07-09
31 2931-CHE-2013-RELEVANT DOCUMENTS [20-09-2021(online)].pdf 2021-09-20
31 FORM 3.pdf 2013-07-05
32 2931-CHE-2013-RELEVANT DOCUMENTS [20-09-2023(online)].pdf 2023-09-20
32 Form 5.pdf 2013-07-05

Search Strategy

1 2931che2013_15-05-2018.pdf

ERegister / Renewals

3rd: 08 Dec 2020

From 02/07/2015 - To 02/07/2016

4th: 08 Dec 2020

From 02/07/2016 - To 02/07/2017

5th: 08 Dec 2020

From 02/07/2017 - To 02/07/2018

6th: 08 Dec 2020

From 02/07/2018 - To 02/07/2019

7th: 08 Dec 2020

From 02/07/2019 - To 02/07/2020

8th: 08 Dec 2020

From 02/07/2020 - To 02/07/2021

9th: 08 Dec 2020

From 02/07/2021 - To 02/07/2022

10th: 20 May 2022

From 02/07/2022 - To 02/07/2023

11th: 08 Jun 2023

From 02/07/2023 - To 02/07/2024

12th: 07 May 2024

From 02/07/2024 - To 02/07/2025

13th: 26 Jun 2025

From 02/07/2025 - To 02/07/2026