IP Library Granted Patent US 12,724,696
Granted Patent B2
US 12,724,696 · App. 18/427,423 · Granted Sep 1, 2026

System and method for dynamically generating automation test scripts for software applications comprising multiple versions

Inventors: Lakshman Prabhu Palanisamy (Chennai, IN); Srinivas Akkaladevi (Hyderabad, IN); Sivasankar Karunagaran (Edison, NJ); Natarajan Venkatarathinam (Chennai, IN)
Assignee: BANK OF AMERICA CORPORATION
G06F11/368G06F11/3684
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 12,724,696
App. No.
18/427,423
Granted
Sep 1, 2026
Kind
B2
Abstract

Embodiments of the present invention provide a system for dynamically generating automation test scripts for software applications comprising multiple versions. The system is configured for identifying a new version of a software code associated with a software application in a code repository in a software development environment, scanning the new version of the software code, identifying new changes to the software code based on scanning the new version of the software code, analyzing the new changes to determine impact associated with the new changes, determining a first set of new changes from the new changes that have an impact on an automation base repository associated with testing the software code, identifying locators associated with the first set of new changes, dynamically creating a new version of a test repository corresponding to the new version in the code repository, and updating the new version of the test repository with the locators.

Claims (66)

1 . A system for dynamically generating automation test scripts for software applications comprising multiple versions, comprising:

at least one processing device;

at least one memory device; and

a module stored in the at least one memory device comprising executable instructions that when executed by the at least one processing device, cause the at least one processing device to:

identify a new version of a software code associated with a software application in a code repository in a software development environment;

scan the new version of the software code;

identify new changes to the software code based on scanning the new version of the software code;

analyze the new changes via a Bayesian network to determine impact associated with the new changes;

determine, via the Bayesian network, a first set of new changes from the new changes that have an impact on an automation base repository associated with testing the software code;

identify locators associated with the first set of new changes, via an Apriori algorithm;

extract values associated with the locators;

dynamically create a new version of a test repository corresponding to the new version in the code repository;

update the new version of the test repository with the locators and the values of the locators;

update the automation base repository used for generating automation test scripts associated with the software application with the new version of the test repository; and

generate one or more automation test scripts for testing the new version of the software code based on the locators and the values of the locators in the base repository.

2 . The system according to claim 1 , wherein the executable instructions cause the at least one processing device to:

automatically execute the one or more automation test scripts;

determine that the execution of the one or more automation test scripts is successful; and

update results associated with successful execution of the one or more automation test scripts in a test management tool.

3 . The system according to claim 1 , wherein the executable instructions cause the at least one processing device to update the automation base repository used for generating automation test scripts associated with the software application with the new version of the test repository for every release cycle associated with the software application.

4 . The system according to claim 1 , wherein the executable instructions cause the at least one processing device to continuously monitor the code repository associated with the software development environment to identify creation of the new version of the software code.

5 . The system according to claim 4 , wherein the executable instructions cause the at least one processing device to continuously monitor version numbers in the code repository to determine a change in a version number from a previously captured instance to identify the creation of the new version of the software code.

6 . The system according to claim 1 , wherein the executable instructions cause the at least one processing device to identify the locators associated with the first set of new changes based on:

determining a set of locators associated with part of the software associated with the first set of new changes; and

sorting the locators from the set of locators that directly cause the first set of new changes, wherein remaining locators excluding the locators from the set of locators, via the Apriori algorithm are not directly associated with causing the first set of new changes.

7 . A computer program product for dynamically generating automation test scripts for software applications comprising multiple versions, comprising a non-transitory computer-readable storage medium having computer-executable instructions for:

identifying a new version of a software code associated with a software application in a code repository in a software development environment;

scanning the new version of the software code;

identifying new changes to the software code based on scanning the new version of the software code;

analyzing the new changes via a Bayesian network to determine impact associated with the new changes;

determining, via the Bayesian network, a first set of new changes from the new changes that have an impact on an automation base repository associated with testing the software code;

identifying locators associated with the first set of new changes, via an Apriori algorithm;

extracting values associated with the locators;

dynamically creating a new version of a test repository corresponding to the new version in the code repository;

updating the new version of the test repository with the locators and the values of the locators;

updating the automation base repository used for generating automation test scripts associated with the software application with the new version of the test repository; and

generating one or more automation test scripts for testing the new version of the software code based on the locators and the values of the locators in the base repository.

8 . The computer program product according to claim 7 , wherein the non-transitory computer-readable storage medium comprises computer-executable instructions for:

automatically executing the one or more automation test scripts;

determining that the execution of the one or more automation test scripts is successful; and

updating results associated with successful execution of the one or more automation test scripts in a test management tool.

9 . The computer program product according to claim 7 , wherein the non-transitory computer-readable storage medium comprises computer-executable instructions for updating the automation base repository used for generating automation test scripts associated with the software application with the new version of the test repository for every release cycle associated with the software application.

10 . The computer program product according to claim 7 , wherein the non-transitory computer-readable storage medium comprises computer-executable instructions for continuously monitoring the code repository associated with the software development environment to identify creation of the new version of the software code.

11 . The computer program product according to claim 10 , wherein the non-transitory computer-readable storage medium comprises computer-executable instructions for continuously monitoring version numbers in the code repository to determine a change in a version number from a previously captured instance to identify the creation of the new version of the software code.

12 . The computer program product according to claim 7 , wherein the non-transitory computer-readable storage medium comprises computer-executable instructions for identifying the locators associated with the first set of new changes based on:

determining a set of locators associated with part of the software associated with the first set of new changes; and

sorting the locators from the set of locators that directly cause the first set of new changes, wherein remaining locators excluding the locators from the set of locators, via the Apriori algorithm are not directly associated with causing the first set of new changes.

13 . A computerized method for dynamically generating automation test scripts for software applications comprising multiple versions, the method comprising:

identifying a new version of a software code associated with a software application in a code repository in a software development environment;

scanning the new version of the software code;

identifying new changes to the software code based on scanning the new version of the software code;

analyzing the new changes via a Bayesian network to determine impact associated with the new changes;

determining, via the Bayesian network, a first set of new changes from the new changes that have an impact on an automation base repository associated with testing the software code;

identifying locators associated with the first set of new changes, via an Apriori algorithm;

extracting values associated with the locators;

dynamically creating a new version of a test repository corresponding to the new version in the code repository;

updating the new version of the test repository with the locators and the values of the locators;

updating the automation base repository used for generating automation test scripts associated with the software application with the new version of the test repository; and

generating one or more automation test scripts for testing the new version of the software code based on the locators and the values of the locators in the base repository.

14 . The computerized method according to claim 13 , wherein the method further comprises:

automatically executing the one or more automation test scripts;

determining that the execution of the one or more automation test scripts is successful; and

updating results associated with successful execution of the one or more automation test scripts in a test management tool.

15 . The computerized method according to claim 13 , wherein the method further comprises updating the automation base repository used for generating automation test scripts associated with the software application with the new version of the test repository for every release cycle associated with the software application.

16 . The computerized method according to claim 13 , wherein the method comprises continuously monitoring the code repository associated with the software development environment to identify creation of the new version of the software code.

17 . The computerized method according to claim 16 , wherein the method comprises continuously monitoring version numbers in the code repository to determine a change in a version number from a previously captured instance to identify the creation of the new version of the software code.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2024
From: PALANISAMY, LAKSHMAN PRABHU; AKKALADEVI, SRINIVAS; KARUNAGARAN, SIVASANKAR; VENKATARATHINAM, NATARAJAN
To: BANK OF AMERICA CORPORATION
Reel/Frame 066307/0291 →
Continuity (1)
Related Publication 20250245130A1 · Jul 31, 2025
References Cited (23)
US 6662312B1 · Keller et al. · 2003 [cited by applicant]
US 7426565B1 · Tormasov et al. · 2008 [cited by applicant]
US 7664993B2 · Alladi et al. · 2010 [cited by applicant]
US 8739126B2 · Glaser et al. · 2014 [cited by applicant]
US 8745641B1 · Coker · 2014 [cited by applicant]
US 8868981B2 · Glaser et al. · 2014 [cited by applicant]
US 9170847B2 · Huggins et al. · 2015 [cited by applicant]
US 10445221B2 · Bromann et al. · 2019 [cited by applicant]
US 10552299B1 · Surace et al. · 2020 [cited by applicant]
US 10942837B2 · Vidal et al. · 2021 [cited by applicant]
US 11042472B2 · Vidal et al. · 2021 [cited by applicant]
US 20140075242A1 · Dolinina et al. · 2014 [cited by applicant]
US 20150212927A1 · N'Gum · 2015 [cited by examiner]
US 20180349256A1 · Fong · 2018 [cited by applicant]
US 20190179732A1 · Venkatasubramanian et al. · 2019 [cited by applicant]
US 20190213115A1 · Takawale et al. · 2019 [cited by applicant]
US 20190340512A1 · Vidal et al. · 2019 [cited by applicant]
US 20210173636A1 · Kolar · 2021 [cited by examiner]
US 20240303184A1 · Liu · 2024 [cited by examiner]
US 20240338310A1 · Bendert · 2024 [cited by examiner]
US 20250045190A1 · Chen · 2025 [cited by examiner]
CN 106130809B · 2019 [cited by examiner]
DE 102012223587A1 · 2014 [cited by applicant]