IP Library Granted Patent US 9,971,673
Granted Patent B2
US 9,971,673 · App. 14/339,767 · Granted May 15, 2018

System and method for testing software in a multi-platform testing environment

Inventors: Hubert Hwang (Mountain View, CA); Rosalba Lucero (Westminster, CO); Hassan A. Shazly (Columbia, SC); Douglas A. Van Dyken (Anderson, SC)
Assignee: International Business Machines Corporation
G06F11/3664G06F11/3688G06F11/3692
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,971,673
App. No.
14/339,767
Granted
May 15, 2018
Kind
B2
Abstract

A computer-implemented method, computer program product, and system is provided for testing software. In an implementation, a method may include executing at least one test group during testing of a software application in a multi-platform testing environment. The method may also include detecting an error in the software application based upon, at least in part, execution of the at least one test group. The method may further include resolving the error during execution of the at least one test group in the multi-platform testing environment.

Claims (26)

1. A computer program product comprising a non-transitory computer readable medium having a plurality of instructions stored thereon, which, when executed by a processor, cause the processor to perform operations including:

extracting at least one test pool from a test repository, wherein each test pool of the at least one test pool is associated with a platform of a multi-platform testing environment and each test pool of the at least one test pool includes at least one test group, wherein the at least one test group includes at least one test case;

executing at least one test group of the at least one test pool during testing of a software application in the multi-platform testing environment, wherein the at least one test group is executed based upon, at least in part, a priority level and a test group status, the test group status identifying one of: each test case in the test group has not been run, each test case within the test group is being executed, each test case within the test group has been run and passed, and at least one test case within the test group includes a resolved failure;

testing incremental code of the software application including suspending execution of the at least one test group, extracting, from the test repository, one or more new test cases associated with the incremental code, adding the one or more new test cases to the at least one test pool, and resuming execution of the at least one test group;

detecting an error in the software application based upon, at least in part, execution of the at least one test group;

diagnosing the error during execution of the at least one test group to determine a specific cause of a failure of at least one test case of the at least one test group;

resolving the error during execution of the at least one test group in the multiplatform testing environment, including resolving the specific cause of the failure; and

re-inserting the at least one test group into the test pool during execution of the at least one test group and changing the status and the priority level of the at least one test group in the test pool based upon, at least in part, resolving the error during execution, wherein the priority level of the at least one test group with the resolved error is set to a higher priority level.

2. The computer program product of claim 1 , wherein executing the at least one test group during testing of the software application in the multi-platform testing environment includes concurrently executing the at least one test group during testing of the software application across a plurality of operating systems.

3. The computer program product of claim 1 , further including:

executing the at least one test case during testing of the software application in the multi-platform testing environment.

4. The computer program product of claim 3 , wherein the at least one test case is executed based upon, at least in part, a processing order.

5. The computer program product of claim 1 , wherein resolving the error during execution of the at least one test group in the multiplatform testing environment further includes automatically re-running the at least one test case.

6. A system comprising:

at least one processor device and at least one memory architecture coupled with the at least one processor device, the at least one processor device configured for:

extracting at least one test pool from a test repository, wherein each test pool of the at least one test pool is associated with a platform of a multi-platform testing environment and each test pool of the at least one test pool includes at least one test group, wherein the at least one test group includes at least one test case;

executing at least one test group of the at least one test pool during testing of a software application in the multi-platform testing environment, wherein the at least one test group is executed based upon, at least in part, a priority level and a test group status, the test group status identifying one of: each test case in the test group has not been run, each test case within the test group is being executed, each test case within the test group has been run and passed, and at least one test case within the test group includes a resolved failure;

testing incremental code of the software application including suspending execution of the at least one test group, extracting, from the test repository, one or more new test cases associated with the incremental code, adding the one or more new test cases to the at least one test pool, and resuming execution of the at least one test group;

detecting an error in the software application based upon, at least in part, execution of the at least one test group;

diagnosing the error during execution of the at least one test group;

resolving the error during execution of the at least one test group in the multiplatform testing environment; and

re-inserting the at least one test group into the test pool during execution of the at least one test group and changing the status and the priority level of the at least one test group in the test pool based upon, at least in part, resolving the error during execution, wherein the priority level of the at least one test group with the resolved error is set to a higher priority level.

7. The system of claim 6 , wherein executing the at least one test group during testing of the software application in the multi-platform testing environment includes concurrently executing the at least one test group during testing of the software application across a plurality of operating systems.

8. The system of claim 6 , further including:

executing the at least one test case during testing of the software application in the multi-platform testing environment.

9. The system of claim 6 , wherein resolving the error during execution of the at least one test group in the multiplatform testing environment further includes automatically re-running the at least one test case.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2014
From: HWANG, HUBERT; LUCERO, ROSALBA; SHAZLY, HASSAN A.; VAN DYKEN, DOUGLAS A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 033383/0914 →
Continuity (1)
Related Publication 20160026562A1 · Jan 28, 2016