Architecture for testing pervasive appliances
First Claim
1. A method for testing appliances, wherein the appliances include an embedded processor and an appliance network address to communicate with remote systems over a network, comprising:
- receiving a test request at a first server program having a first network address indicating a test to perform and an appliance to test;
loading a second server program having a second network address;
transmitting, with the second server program, information on the test request to the appliance network address indicated in the test request;
loading a third server program to execute within the appliance embedded processor having a third network address in response to receiving information on the test request;
transmitting, with the second server program, at least one test command to the third network address;
executing, with the third server program, each test command transmitted from the second server program; and
returning, with the third server program, test response data generated in response to executing each test command to the second network address for processing by the second server program.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed is a system, method, and program for testing appliances. The appliance includes an embedded processor and an appliance network address to communicate with remote systems over a network. A first server program having a first network address, such as an HTTP server program, receives a test request indicating a test to perform and an appliance to test. A second server program, such as a Java servlet, having a second network address is loaded and transmits information on the test request to the appliance network address indicated in the test request. A third server program having a third network address, such as a Java servlet, is loaded to execute within the appliance embedded processor in response to receiving information on the test request. The second server program transmits at least one test command to the third network address. The third server program executes each test command transmitted from the second server program and returns test response data, generated in response executing each test command, to the second network address for processing by the second server program.
56 Citations
43 Claims
-
1. A method for testing appliances, wherein the appliances include an embedded processor and an appliance network address to communicate with remote systems over a network, comprising:
-
receiving a test request at a first server program having a first network address indicating a test to perform and an appliance to test;
loading a second server program having a second network address;
transmitting, with the second server program, information on the test request to the appliance network address indicated in the test request;
loading a third server program to execute within the appliance embedded processor having a third network address in response to receiving information on the test request;
transmitting, with the second server program, at least one test command to the third network address;
executing, with the third server program, each test command transmitted from the second server program; and
returning, with the third server program, test response data generated in response to executing each test command to the second network address for processing by the second server program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 35, 36)
receiving the information on the test request transmitted by the second server program with a fourth server program executing within the appliance embedded processor;
determining whether the third server program is loaded within the appliance embedded processor;
sending, with the fourth server program, a request for the third server program to the second network address if the third server program is not loaded on the appliance; and
receiving the third server program from the second server program.
-
-
3. The method of claim 1, further comprising transmitting, with the second server program, a subsequent test command to the third network address after receiving returned test response data for a previous test command.
-
4. The method of claim 2, wherein the first server program is a Hypertext Transfer Protocol (HTTP) server, wherein the second server program is a servlet, wherein the third server program is a servlet, and wherein the fourth server program is an HTTP server.
-
5. The method of claim 1, further comprising:
-
transmitting a destroy command to the third network address; and
removing, with the third server program, the third server program from the application embedded processor in response to processing the destroy command.
-
-
6. The method of claim 1, wherein the test request includes parameters to control the execution of the test command, wherein the parameters are transmitted with the test commands to the third server program.
-
7. The method of claim 1, wherein the execution of the test command determines computational resources available at the appliance, wherein the second server program further performs:
-
determining whether the returned test response data indicates that the appliance has sufficient computational resources to execute each test command; and
returning failure if the appliance does not have sufficient computational resources.
-
-
8. The method of claim 1, further comprising:
-
generating the test request at a computer connected to the network;
transmitting, with the computer, the test request to the first server program at the first network address; and
returning test response data, with the second server program, to the computer over the network.
-
-
35. The method of claim 1, wherein the test request received at the first server program indicates the appliance network address corresponding to the appliance to be tested.
-
36. The method of claim 35, wherein the second server program receives the appliance network address from the first server program, and wherein the second server program transmits the test request to the appliance to be tested.
-
9. A system for testing appliances, wherein the appliances include an embedded processor and an appliance network address to communicate with remote systems over a network, comprising:
-
first server program means, having a first network address, for receiving a test request indicating a test to perform and an appliance to test;
means for loading a second server program having a second network address;
second server program means for transmitting information on the test request to the appliance network address indicated in the test request and transmitting at least one test command to a third network address;
means for loading a third server program to execute within the appliance embedded processor having the third network address in response to receiving information on the test request; and
third server program means for executing each test command transmitted from the second server program and for returning test response data generated in response to executing each test command to the second network address for processing by the second server program. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 37, 38)
determines whether the returned test response data indicate that the appliance has sufficient computational resources to execute each test command; and
returns failure if the appliance does not have sufficient computational resources.
-
-
17. The system of claim 9, further comprising:
-
a computer for generating the test request;
means for transmitting the test request from the computer to the first server program at the first network address, wherein the second server program means further returns test response data to the computer over the network.
-
-
37. The system of claim 9, wherein the test request received by the first server program means indicates the appliance network address corresponding to the appliance to be tested.
-
38. The system of claim 37, wherein the second server program means receives the appliance network address from the first server program means, and wherein the second server program means transmits the test request to the appliance to be tested.
-
18. An article of manufacture for testing appliances, wherein the appliances include an embedded processor and an appliance network address to communicate with remote systems over a network, the article of manufacture comprising computer usable media including at least one first server program, second server program, and third server program embedded therein that cause the appliance and at least one computer to perform:
-
receiving a test request with the first server program having a first network address indicating a test to perform and an appliance to test;
loading the second server program having a second network address;
transmitting, with the second server program, information on the test request to the appliance network address indicated in the test request;
loading the third server program to execute within the appliance embedded processor having a third network address in response to receiving information on the test request;
transmitting, with the second server program, at least one test command to the third network address;
executing, with the third server program, each test command transmitted from the second server program; and
returning, with the third server program, test response data generated in response to executing each test command to the second network address for processing by the second server program. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 39, 40)
receiving the information on the test request transmitted by the second server program;
determining whether the third server program is loaded within the appliance embedded processor;
sending a request for the third server program to the second network address if the third server program is not loaded on the appliance; and
receiving the third server program from the second server program.
-
-
20. The article of manufacture of claim 18, where in the second server program further causes one computer to perform transmitting a subsequent test command to the third network address after receiving test response data for a previous test command.
-
21. The article of manufacture of claim 19, wherein the first server program is a Hypertext Transfer Protocol (HTTP) server, wherein the second server program is a servlet, wherein the third server program is a servlet, and wherein the fourth server program is an HTTP server.
-
22. The article of manufacture of claim 18, further comprising:
-
transmitting a destroy command to the third network address; and
removing, with the third server program, the third server program from the application embedded processor in response to processing the destroy command.
-
-
23. The article of manufacture of claim 18, wherein the test request includes parameters to control the execution of the test command, wherein the parameters are transmitted with the test commands to the third server program.
-
24. The article of manufacture of claim 18, wherein the execution of the test command determines computational resources available at the appliance, wherein the second server program further causes the computer to perform:
-
determining whether the test response data indicates that the appliance has sufficient computational resources to execute each test command; and
returning failure if the appliance does not have sufficient computational resources.
-
-
25. The article of manufacture of claim 18, wherein the computer usable media further comprises a fourth program for causing a computer to perform:
-
generating the test request;
transmitting the test request to the first server program at the first network address, wherein the second server program returns the test response data to the computer over the network.
-
-
39. The article of manufacture of claim 18, wherein the test request received at the first server program indicates the appliance network address corresponding to the appliance to be tested.
-
40. The article of manufacture of claim 39, wherein the second server program receives the appliance network address from the first server program, and wherein the second server program transmits the test request to the appliance to be tested.
-
26. A method for testing appliances, wherein each appliance includes an embedded processor and an appliance network address to communicate with remote systems over a network, comprising:
-
storing a plurality of test cases on a test server remote from an appliance to be tested;
accessing one of the test cases based on an identity of the appliance to be tested;
downloading the test case to the appliance; and
sending test response data generated during execution in the appliance of the downloaded portion of the test case to a system remote from the appliance. - View Dependent Claims (27, 28, 41)
-
-
29. A system for testing appliances, wherein each appliance includes an embedded processor and an appliance network address to communicate with remote systems over a network, comprising:
-
means for storing a plurality of test cases on a test server remote from an appliance to be tested;
means for accessing one of the test cases based on an identity of the appliance to be tested;
means for downloading the test case to the appliance; and
means for sending test response data generated during execution in the appliance of the downloaded portion of the test case to a system remote from the appliance. - View Dependent Claims (30, 31, 42)
-
-
32. An article of manufacture for testing appliances, wherein each appliance includes an embedded processor and an appliance network address to communicate with remote systems over a network, the article of manufacture comprising computer usable media including at least one computer program to perform:
-
storing a plurality of test cases on a test server remote from an appliance to be tested;
accessing one of the test cases based on an identity of the appliance to be tested;
downloading the test case to the appliance; and
sending test response data generated during execution in the appliance of the downloaded portion of the test case to a system remote from the appliance. - View Dependent Claims (43)
-
-
33. The article of manufacture 32, wherein the test server and system are within the same computing device.
-
34. The article of manufacture 32, further comprising initiating downloading of one test case from a system separate from the appliance.
Specification