US2021326245A1PendingUtilityA1

AI Software Testing System and Method

Assignee: APPDIFF INCPriority: May 1, 2018Filed: Apr 30, 2021Published: Oct 21, 2021
Est. expiryMay 1, 2038(~11.8 yrs left)· nominal 20-yr term from priority
G06F 11/3698G06F 3/0484G06F 11/3688G06N 3/006G06N 20/00G06F 11/3684G06F 11/3692G06F 11/3664
45
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A system for performing software testing uses machine learning to extract features from a user interface of an app, classify screen types and screen elements of the user interface, and implement flows of test sequences to test the app. Training is performed to train the system to learn common application states of an application graph and to navigate through an application. In some implementations, the training includes Q-learning to learn how to navigate to a selected screen state. In some implementations, there is reuse of classifiers cross-application and cross platform.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . An artificial intelligence software testing system to test software applications having a sequence of screens with each screen having a set of screen elements, comprising:
 a set of intelligent machine learning bots trained to:
 crawl through a software application; 
 analyze a visual appearance of screens and identify screen types and screen elements based at least in part on a visual appearance; and 
 apply test cases to the software application; 
 wherein the set of intelligent machine learning bots are trained to determine application states and sequences of states of the software application. 
   
     
     
         2 . The system of  claim 1 , wherein applying test cases comprises:
 identify test cases based on the identified screen types and screen elements;   apply the identified test cases to the software application; and   report test results for the software application.   
     
     
         3 . The system of  claim 1 , wherein the set of intelligent machine learning bots are trained to:
 identify test cases based on the identified screen types, screen elements, and associated application states and sequences of states of a logical state graph.   
     
     
         4 . The system of  claim 1 , wherein the set of intelligent machine learning bots comprises a set of classifiers are trained to:
 analyze a visual appearance of screens using at least one classifier trained to analyze a visual appearance of graphical user interfaces; and   identify screen types and screen elements based at least in part on a visual appearance.   
     
     
         5 . The system of  claim 4 , wherein the set of classifiers are trained to:
 determine a screen type based at least in part on a visual appearance of the screen based on an image classification.   
     
     
         6 . An artificial intelligence software testing system to test software applications having a sequence of screens with each screen having a set of screen elements, comprising:
 a set of intelligent machine learning bots including at least one intelligent machine learning bot trained to:
 crawl through a software application; 
 identify screen types and screen elements of the screens; and 
 apply test cases to the software application; 
 wherein the set of intelligent machine learning bots are trained to recognize screens and screen elements common to a class of software applications having common screen states in a nodal state graph. 
   
     
     
         7 . The system of  claim 6 , wherein the nodal graph includes at least one of search screen node, a shopping cart screen node, a sign-in screen node, a sign-out screen node, a product screen node and a checkout screen node. 
     
     
         8 . The system of  claim 6 , wherein the set of intelligent machine learning bots are trained to analyze elements, screens, and flows of applications. 
     
     
         9 . The system of  claim 6 , wherein the set of intelligent bots are further trained to report performance of the software application. 
     
     
         10 . The system of  claim 6 , wherein the machine learning system is configured to test software apps for different platforms by applying a conversion table to adjust the testing for differences in software application appearance and formatting on different platforms, devices, screen sizes, and screen densities. 
     
     
         11 . A computer-implemented method to test software applications having a sequence of screens with each screen having a set of screen elements, using a set of intelligent machine learning bots trained to perform a method comprising:
 crawling through a software application;   identifying screen types and screen elements of the screens; and   applying test cases to the software application;   wherein applying test cases includes identifying test cases based on the identified screen types and screen elements, applying the identified test cases to the software application, and reporting test results for the software application.   
     
     
         12 . A computer-implemented method to test software applications having a sequence of screens with each screen having a set of screen elements, using a set of intelligent machine learning bots trained to perform a method comprising:
 crawling through a software application;   identifying screen types and screen elements of the screens;   determining application states and sequences of states associated with a logical state graph of potential user interactions with a graphical user interface associated with the software application; and   applying test cases to the software application;   
     
     
         13 . The method of  claim 12 , wherein the method further comprises:
 identifying test cases based on the identified screen types, screen elements, and associated application states and sequences of states of the logical state graph.   
     
     
         14 . The method of  claim 12 , wherein the method comprises
 analyzing a visual appearance of screen using at least one classifier trained to analyze a visual appearance of graphical user interfaces;   identifying screen types and screen elements based at least in part on a visual appearance.   
     
     
         15 . The method of  claim 12 , wherein the method comprises:
 determining a screen type based at least in part on a visual appearance of the screen based on an image classification.   
     
     
         16 . A computer-implemented method to test software applications having a sequence of screens with each screen having a set of screen elements, using a set of intelligent machine learning bots trained to perform a method comprising:
 crawling through a software application;   identifying screen types and screen elements of the screens, including recognizing screens and screen elements common to a class of software applications having common screen states in a nodal state graph; and   applying test cases to the software application.   
     
     
         17 . The method of  claim 16 , wherein the nodal graph includes at least one of a search screen node, a shopping cart screen node, a sign-in screen node, a sign-out screen node, a product screen node and a checkout screen node. 
     
     
         18 . The method of  claim 16 , wherein the method further comprises analyzing elements, screens, and flows of applications. 
     
     
         19 . The method of  claim 16 , wherein the method further comprises determining and reporting on the performance of the software application. 
     
     
         20 . The method of  claim 16 , further comprising testing software apps for different platforms by applying a conversion table to adjust the testing for differences in software application appearance and formatting on different platforms, devices, screen sizes, and screen densities. 
     
     
         21 . The method of  claim 16 , further comprising analyzing images on the screens to identify displayable user interface elements of the software application.

Join the waitlist — get patent alerts

Track US2021326245A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.