# US 2019/0377663 A1 · Performance testing platform that enables reuse of automation scripts and performance testing scalability

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0377663 A1
- Document ID: US20190377663A1
- Status: Published application
- Kind: A1
- Application number: 16/243,695
- Filed: 2019-01-09
- Published: 2019-12-12
- Earliest claimed: 2018-06-07
- Assignees: Capital One Services, LLC
- Applicants: Capital One Services, LLC
- Inventors: Laszlo SZERENYI
- Web page: https://patentgrep.com/patent/US20190377663A1

## CPC

- G06F 11/3698: Environments for analysis, debugging or testing of software
- G06F 11/3672: {Test management}
- G06F 11/3688: {for test execution, e.g. scheduling of test suites}
- G06F 9/45533: {Hypervisors; Virtual machine monitors}
- G06F 9/45545: {Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox}
- G06F 11/3409: {for performance assessment}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A testing platform receives a code for testing, where the code is to be tested using a browser. The testing platform determines a number of a plurality of browsers that are to be used to test the code and generates a number of a plurality of virtual machines to host the plurality of browsers, where the number of the plurality of virtual machines is based on the number of the plurality of browsers. The testing platform assigns an automation script to each virtual machine of the virtual machines to test the code, and monitors execution of the automation script by each virtual machine of the plurality of virtual machines. The testing platform performs an action associated with the execution of the automation script by each virtual machine of the plurality of virtual machines.

## Claims

### Claim 1

A method, comprising:
receiving, by a device, a segment of software code associated with an application,
where the segment of software code is to be tested using a browser of a plurality of browsers on one or more virtual machines of a plurality of virtual machines,
a quantity of the plurality of virtual machines corresponding to a quantity of the plurality of browsers;
determining, by the device, a characteristic of the application,
the quantity of the plurality of browsers being based on the characteristic of the application;
selecting, by the device, a first automation script to test the segment of software code based on the characteristic of the application;
assigning, by the device, the first automation script to the one or more virtual machines of the plurality of virtual machines to test the segment of software code,
the first automation script comprising a plurality of performance tests to test the segment of software code,
transmitting, by the device, the first automation script to the one or more virtual machines of the plurality of virtual machines to test the segment of software code;
monitoring, by the device, execution of the first automation script by the one or more virtual machines of the plurality of virtual machines;
receiving, by the device, notification when the segment of software code passes or fails one or more of the plurality of performance tests based on the execution of the first automation script by the one or more virtual machines of the plurality of virtual machines; and
performing, by the device, an action associated with the execution of the first automation script by the one or more virtual machines of the plurality of virtual machines.

### Claim 2 (depends on 1)

The method of claim 1, where the application is associated with providing one or more financial services.

### Claim 3 (depends on 2)

The method of claim 2, where the one or more financial services include at least one of:
performing a financial transaction,
accessing a banking account service,
receiving a financial consultation service,
accessing an investment banking service,
receiving a transaction card service,
performing a deposit transaction,
performing a withdrawal transaction,
performing a currency transfer,
performing a bill payment,
accessing a loan service, or
requesting a cash delivery service

### Claim 4 (depends on 1)

The method of claim 1, where the characteristic of the application comprises a number of users that access the application on average at a particular time.

### Claim 5 (depends on 1)

The method of claim 1, where each virtual machine of the plurality of virtual machines hosts at least one browser of the plurality of browsers.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
select a second automation script to test the segment of software code based on the characteristic of the segment of software code,
where the second automation script includes a different set of performance tests than the first automation script;
assign the second automation script to each virtual machine of a second set of the plurality of virtual machines to test the segment of software code;
monitor execution of the second automation script within each browser running on each of the second set of the plurality of virtual machines; and
perform an action associated with the execution of the first automation script and second automation script by each virtual machine of the plurality of virtual machines.

### Claim 7 (depends on 1)

The method of claim 1, where the segment of software code includes at least one of:
an update to the application,
a feature of the application,
software to implement the application, or
an application programming interface (API) associated with the application.

### Claim 8

A device, comprising:
one or more memories; and
one or more processors, communicatively coupled to the one or more memories, to:
receive a segment of software code associated with an application,
where the segment of software code is to be tested using a browser of a plurality of browsers on one or more virtual machines of a plurality of virtual machines;
determine a characteristic of the application,
a particular quantity of the plurality of browsers being based on the characteristic of the application;
select an automation script to test the segment of software code based on the characteristic of the application;
assign the automation script to one or more virtual machines of the plurality of virtual machines to test the segment of software code,
transmit the automation script to the one or more virtual machines of the plurality of virtual machines to test the segment of software code;
receive notification when the segment of software code passes or fails one or more of a plurality of performance tests based on execution of the automation script by the one or more virtual machines of the plurality of virtual machines; and
perform an action associated with execution of the automation script by the one or more virtual machines of the plurality of virtual machines.

### Claim 9 (depends on 8)

The device of claim 8, where the application is associated with providing one or more financial services.

### Claim 10 (depends on 9)

The device of claim 9, where the one or more financial services include at least one of:
performing a financial transaction,
accessing a banking account service;
receiving a financial consultation service;
accessing an investment banking service;
receiving a transaction card service;
performing a deposit transaction;
performing a withdrawal transaction;
performing a currency transfer;
performing a bill payment;
accessing a loan service; or
requesting a cash delivery service.

### Claim 11 (depends on 8)

The device of claim 8, where the characteristic of the application comprises a number of potential users of the application.

### Claim 12 (depends on 8)

The device of claim 8, where the one or more processors are further to:
access a cloud environment hosting the plurality of virtual machines; and
assign, via the cloud environment, the plurality of virtual machines to run the plurality of browsers,
wherein each of the plurality of virtual machines runs one of the plurality of browsers.

### Claim 13 (depends on 8)

The device of claim 8, where each of the plurality of browsers are a same type of browser.

### Claim 14 (depends on 8)

The device of claim 8, where the segment of software code includes at least one of:
an update to the application,
a feature of the application,
software to implement the application, or
an application programming interface (API) associated with the application.

### Claim 15

A non-transitory computer-readable medium storing one or more instructions for wireless communication, the one or more instructions comprising: one or more instructions that, when executed by one or more processors of a device, cause the one or more processors to:
receive a segment of software code associated with an application,
where the segment of software code is to be tested using a browser of a plurality of browsers on one or more virtual machines of a plurality of virtual machines,
a quantity of the plurality of virtual machines corresponding to a quantity of the plurality of browsers;
determine a characteristic of the application;
select an automation script to test the segment of software code based on the characteristic of the application;
transmit the automation script to the one or more virtual machines of the plurality of virtual machines to test the segment of software code; and
perform an action associated with execution of the automation script by the one or more virtual machines of the plurality of virtual machines.

### Claim 16 (depends on 15)

The non-transitory computer-readable medium of claim 15, where the quantity of the plurality of browsers is based on the characteristic of the application.

### Claim 17 (depends on 15)

The non-transitory computer-readable medium of claim 15, where the one or more instructions, that cause the one or more processors to perform the action, cause the one or more processors to:
determine whether the segment of software code passed or failed a performance test of the automation script based on the execution of the automation script; and
indicate that the segment of software code passed or failed the performance test.

### Claim 18 (depends on 15)

The non-transitory computer-readable medium of claim 15, where the characteristic of the application comprises a number of users that access the application on average at a particular time.

### Claim 19 (depends on 15)

The non-transitory computer-readable medium of claim 15, where he segment of software code includes at least one of:
an update to the application,
a feature of the application,
software to implement the application, or
an application programming interface (API) associated with the application.

### Claim 20 (depends on 15)

The non-transitory computer-readable medium of claim 15, where each of the plurality of browsers are a same type of browser.
