Automated software testing
First Claim
1. A method of testing software, the method comprising:
- using one or more computer processors to perform operations of;
receiving a command from a user to test the software using a configuration selected from a plurality of configurations, the configuration specifying a test environment and a test system, wherein the test system is any computing device capable of simulating the test environment;
receiving a test case in a test case file written in accordance with one of a plurality of compatible test frameworks;
automatically generating a test harness for the software test from the received test case and the software under test, the test harness executing the received test case by calling unmodified code for the software under test according to conditions specified in the received test case, the test harness comprising the unmodified code for the software under test and code for at least one test case, wherein the test harness code and the unmodified code for the software under test are two different coding languages;
hosting the generated test harness at a determined resource locator;
causing the test system to request the generated test harness;
receiving a request from the test system to provide the generated test harness, and responsive to receiving the request, providing the generated test harness and the configuration specified by the test environment to the test system and causing the test system to run the software test according to the test case in the configuration specified by the test environment;
receiving a software test result from the test system; and
displaying the software test result to the user.
2 Assignments
0 Petitions
Accused Products
Abstract
Disclosed in some examples are systems, machine readable mediums and methods which automate testing of web-based application code by automatically generating test harnesses based on a specified configuration and test script, hosting the test harness, causing the test harness to be run to test the code, and delivering the test results to the user. In some examples, the specified conditions may specify one or more test environments corresponding to an execution environment. This allows users greater flexibility in support of testing libraries and support of testing environments. The end users of the software under test will be provided software that is better tested for many different environments.
-
Citations
21 Claims
-
1. A method of testing software, the method comprising:
using one or more computer processors to perform operations of; receiving a command from a user to test the software using a configuration selected from a plurality of configurations, the configuration specifying a test environment and a test system, wherein the test system is any computing device capable of simulating the test environment; receiving a test case in a test case file written in accordance with one of a plurality of compatible test frameworks; automatically generating a test harness for the software test from the received test case and the software under test, the test harness executing the received test case by calling unmodified code for the software under test according to conditions specified in the received test case, the test harness comprising the unmodified code for the software under test and code for at least one test case, wherein the test harness code and the unmodified code for the software under test are two different coding languages; hosting the generated test harness at a determined resource locator; causing the test system to request the generated test harness; receiving a request from the test system to provide the generated test harness, and responsive to receiving the request, providing the generated test harness and the configuration specified by the test environment to the test system and causing the test system to run the software test according to the test case in the configuration specified by the test environment; receiving a software test result from the test system; and displaying the software test result to the user. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A system for testing software, the system comprising:
one or more processors configured to; receive a command from a user to test the software using a configuration selected from a plurality of configurations, the configuration specifying a test environment and a test system, wherein the test system is any computing device capable of simulating the test environment; receive a test case in a test case file written in accordance with one of a plurality of compatible test frameworks; automatically generate a test harness for the software test from the received test case and the software under test, the test harness executing the received test case by calling unmodified code for the software under test according to conditions specified in the received test case, the test harness comprising the unmodified code for the software under test and code for at least one test case, wherein the test harness code and the unmodified code for the software under test are two different coding languages; host the generated test harness at a determined resource locator; cause the test system to request the generated test harness; receive a request from the test system to provide the generated test harness, and responsive to receiving the request, provide the generated test harness and the configuration specified by the test environment to the test system and causing the test system to run the software test according to the test case in the configuration specified by the test environment; receive a software test result from the test system; and cause a display of the software test result to the user. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
15. A non-transitory machine readable medium that stores instructions which when performed by a machine, cause the machine to test software by performing operations comprising:
-
receiving a command from a user to test the software using a configuration selected from a plurality of configurations, the configuration specifying a test environment and a test system, wherein the test system is any computing device capable of simulating the test environment; receiving a test case in a test case file written in accordance with one of a plurality of compatible test frameworks; automatically generating a test harness for the software test from the received test case and the software under test, the test harness executing the received test case by calling unmodified code for the software under test according to conditions specified in the received test case, the test harness comprising the unmodified code for the software under test and code for at least one test case, wherein the test harness code and the unmodified code for the software under test are two different coding languages; hosting the generated test harness at a determined resource locator; causing the test system to request the generated test harness; receiving a request from the test system to provide the generated test harness, and responsive to receiving the request, providing the generated test harness and the configuration specified by the test environment to the test system and causing the test system to run the software test according to the test case in the configuration specified by the test environment; receiving a software test result from the test system; and displaying the software test result to the user. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification