Abstract: Provided herein is technology relating to testing software and particularly, but not exclusively, to systems and methods for visually validating a step in a software test case and using the visual validation to reinforce an element selection model, the technology provides methods for visually validating a step in a software test case. More particularly, embodiments of the technology provide a method of mapping web elements of a website or app to a visual screenshot of that website or app by combining data from the document object model (DOM) and page screenshot.
Abstract: A system for performing a task with multiple specific steps given a general natural language command. The system includes an electronic processor. The electronic processor is configured to receive a general natural language command specifying a task to perform and, using a first machine learning system, generate a plurality of specific steps associated with the general natural language command. The electronic processor is also configured to, using the plurality of specific steps and a second machine learning system, perform the task, determine whether the task is performed successfully, and, when the task is not performed successfully, retrain the first machine learning system, second machine learning system, or both.
Abstract: Provided herein is technology relating to testing software and particularly, but not exclusively, to methods for identifying the cause of a failed software test using probabilistic graphical models and/or a rules engine to evaluate and sort test steps by likelihood of failure for dynamic applications.