IP Library Granted Patent US 11,934,301
Granted Patent B2
US 11,934,301 · App. 17/498,644 · Granted Mar 19, 2024

System and method for automated software testing

Inventor: Syed Hamid (Redmond, WA)
G06F11/3688G06F9/45558G06F11/323G06F11/3684G06F11/3692G06F2009/45591
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 11,934,301
App. No.
17/498,644
Filed
Oct 11, 2021
Granted
Mar 19, 2024
Kind
B2
Examiner
VO, TED T
Art Unit
2191
USPC
717/125
Abstract

A system and method for automated software testing that uses machine learning algorithms to automatically generate and implement software testing based on an automated analysis of the software. In an embodiment, a mobile software application comprising one or more screens is processed through a trained machine learning algorithm to identify screens and objects, understand the operational flow of the application, define priorities and dependencies within the application, define validation tests, and automatically generate one or more testing scenarios for the application. The testing scenarios may then be fed to an automated execution module which installs the application on one or more physical or virtual devices and performs testing on the application installed on those devices according to the testing scenario.

Claims (27)

1. A system for automated software testing, comprising:

a computing device comprising a memory and a processor;

a first machine learning algorithm operating on the computing device, the first machine learning algorithm configured to classify one or more screens of a software application;

a second machine learning algorithm operating on the computing device, the second machine learning algorithm configured to identify one or more operable objects on the screens of the software application;

a third machine learning algorithm operating on the computing device, the third machine learning algorithm configured to predict an operational flow of the software application based on the classification of the screens and the identification of the operable objects; and

an automated test scenario generator comprising a first plurality of programming instructions stored in the memory which, when operating on the processor, cause the computing device to:

select or receive one or more validation tests for the software application;

generate a testing scenario for the software application, the testing scenario comprising a test script for application of the validation tests to the software application based on the classified screens, the identified operable objects, and the predicted operational flow.

2. The system of claim 1 , wherein the first machine learning algorithm is an unsupervised learning algorithm.

3. The system of claim 1 , wherein the second machine learning algorithm is a supervised learning algorithm.

4. The system of claim 1 , wherein the third machine learning algorithm is a reinforced learning algorithm.

5. The system of claim 1 , further comprising an automated execution module comprising a second plurality of programming instructions stored in the memory which, when operating on the processor, cause the computing device to test the software application by executing the testing scenario on an installed copy of the software application.

6. The system of claim 5 , further comprising a virtual machine operating on the computing device and wherein the software application is installed and tested on a virtual second computing device operating on the virtual machine.

7. The system of claim 5 , further comprising a second computing device and wherein the software application is installed and tested on the second computing device.

8. A method for automated software testing, comprising the steps of:

using a first machine learning algorithm operating on a computing device to classify one or more screens of a software application;

using a second machine learning algorithm operating on the computing device to identify one or more operable objects on the screens of the software application;

using a third machine learning algorithm operating on the computing device to predict an operational flow of the software application based on the classification of the screens and the identification of the operable objects; and

using an automated test scenario generator operating on the computing device to:

select or receive one or more validation tests for the software application; and

generate a testing scenario for the software application, the testing scenario comprising a test script for application of the validation tests to the software application based on the classified screens, the identified operable objects, and the predicted operational flow.

9. The method of claim 8 , wherein the first machine learning algorithm is an unsupervised learning algorithm.

10. The method of claim 8 , wherein the second machine learning algorithm is a supervised learning algorithm.

11. The method of claim 8 , wherein the third machine learning algorithm is a reinforced learning algorithm.

12. The method of claim 8 , further comprising the step of using an automated execution module operating on the computing device to test the software application by executing the testing scenario on an installed copy of the software application.

13. The method of claim 12 , further comprising the steps of installing the software application on a virtual second computing device operating on a virtual machine operating on the computing device and testing the software application on the virtual second computing device.

14. The method of claim 12 , further comprising the steps of installing the software application on a second computing device and testing the software application on the second computing device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2023
From: HAMID, SYED
To: SMARTLYTICS LLC, DBA QUANTYZD
Reel/Frame 064711/0261 →
Continuity (8)
Continuation 17387963 · Jul 28, 2021
Continuation 16719635 · Dec 18, 2019
Continuation In Part 16590293 · Oct 1, 2019
Continuation In Part 16590293 · Oct 1, 2019
Continuation In Part 15869013 · Jan 11, 2018
Provisional Application 63057480 · Jul 28, 2020
Provisional Application 62445200 · Jan 11, 2017
Related Publication 20220100647A1 · Mar 31, 2022
Cited By (1)
US 12,572,452