CA3077762C - System and method for automated application testing - Google Patents
System and method for automated application testing Download PDFInfo
- Publication number
- CA3077762C CA3077762C CA3077762A CA3077762A CA3077762C CA 3077762 C CA3077762 C CA 3077762C CA 3077762 A CA3077762 A CA 3077762A CA 3077762 A CA3077762 A CA 3077762A CA 3077762 C CA3077762 C CA 3077762C
- Authority
- CA
- Canada
- Prior art keywords
- test
- testing
- environment
- application
- new
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 333
- 238000000034 method Methods 0.000 title claims abstract description 63
- 238000011161 development Methods 0.000 claims abstract description 103
- 238000004891 communication Methods 0.000 claims abstract description 63
- 238000004088 simulation Methods 0.000 claims abstract description 16
- 230000000977 initiatory effect Effects 0.000 claims abstract description 14
- 238000011056 performance test Methods 0.000 claims description 19
- 238000011900 installation process Methods 0.000 claims description 9
- 230000000737 periodic effect Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 10
- 230000008520 organization Effects 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 238000009434 installation Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3013—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Abstract
Description
TECHNICAL FIELD
[0001] The following relates generally to automated application testing.
BACKGROUND
These negative impacts can also impact customer retention and uptake, particularly for younger generations who value their ability to perform many tasks remotely and with mobility.
SUMMARY
The method includes requesting via the communications module, from a repository for a development environment, a current build file for each of at least one device type. The method also includes receiving via the communications module, from the repository, the current build file for each device type; deploying via the communications module, each current build file on a respective device type; and initiating at least one test on each device type based on a simulation of the device operating according to the current build file.
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15
The computer readable medium also includes instructions for receiving via the communications module, from the repository, the current build file for each device type;
deploying via the communications module, each current build file on a respective device type; and initiating at least one test on each device type based on a simulation of the device operating according to the current build file.
BRIEF DESCRIPTION OF THE DRAWINGS
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15
DETAILED DESCRIPTION
Upon installation, the application on each device can be configured to point to the appropriate environment under test and other settings can be selected/deselected for one or more different test types.
Such manual efforts can be time-consuming as they would require manual effort to be replicated across each device. The automated process implemented by the application testing environment described herein can mitigate this manual effort.
Thus, the CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15 application testing environment can automate the build download and installation process.
The method includes requesting via the communications module, from a repository for a development environment, a current build file for each of at least one device type. The method also includes receiving via the communications module, from the repository, the current build file for each device type; deploying via the communications module, each current build file on a respective device type; and initiating at least one test on each device type based on a simulation of the device operating according to the current build file.
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15
The computer readable medium also includes instructions for receiving via the communications module, from the repository, the current build file for each device type;
deploying via the communications module, each current build file on a respective device type; and initiating at least one test on each device type based on a simulation of the device operating according to the current build file.
The device can also further cause the processor to log testing data for a plurality of tests and compare the plurality tests for at least one performance metric using logged data.
The application build data 18 can include any computer code and related data and information for an application to be deployed, e.g., for testing, execution or other uses.
For example, an organization may contract a third-party to develop an app for their organization but perform testing internally to meet proprietary or regulatory requirements. Similarly, an organization that develops an app may outsource the testing stages, particularly when testing is performed infrequently. The application deployment environment 16 may likewise be implemented in several different ways.
For example, the deployment environment 16 may include an internal deployment channel for employee devices, may include a public marketplace such as an app store, or may include any other channel that can make the app available to clients, consumers or other users.
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15
Such a cryptographic server can also be configured to communicate and operate with a cryptographic infrastructure, such as a public key infrastructure (PKI), certificate authority (CA), certificate revocation service, signing authority, key server, etc. The cryptographic server and cryptographic infrastructure can be used to protect the various data communications described herein, to secure communication channels therefor, authenticate parties, manage digital certificates for such parties, manage keys (e.g., public and private keys in a PKI), and perform other cryptographic operations that are required or desired for particular applications of the application development environment 12 and/or application testing environment 10. The cryptographic server may be used to protect data within the computing environment 8 (include the application build data 18 and/or application test data 20) by way of encryption for data protection, digital signatures or message digests for data integrity, and by using digital certificates to authenticate the identity of the users and entity devices with which the application development environment 12 and application testing environment 10 communicate to inhibit data breaches by adversaries. It can be appreciated that various cryptographic mechanisms and protocols can be chosen and implemented to suit the constraints and requirements of the particular deployment of the application development environment 12 and application testing environment 10 as is known in the art.
The compiler 36 may then be used to compile an application build file and other data to be stored with the application build data 18. It can be appreciated that a typical application or software development environment 12 may include other functionality, modules, and systems, details of which are omitted for brevity and ease of illustration. It can also be appreciated that the application development environment 12 may include modules, accounts, and access controls for enabling multiple developers to participate in developing an application, and modules for enabling an application to be developed for multiple platforms. For example, a mobile application may be developed by multiple teams, each team potentially having multiple programmers. Also, each team may be responsible for developing the application on a different platform, such as Apple iOS or Google Android for mobile versions, and Google Chrome or Microsoft Edge for web browser versions. Similarly, applications may be developed for deployment on different device types, even with the same underlying operating system.
It can be appreciated that any of the modules, tools, and engines shown in FIG. 2 may also be hosted externally and be available to the application development environment 12, e.g., via communications modules such as the development environment interface 38.
The testing host(s) 54 are also scalable, allowing for additional test devices 22 to be incorporated into the application testing environment 10. For example, a new test device 22 may be added when a new device type is released and will be capable of using the application being tested. Upon installation, the application on each test device 22 can be configured to point to the appropriate environment under test and other settings can be selected/deselected.
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15 platform(s) and run a Ul flow on all test devices 22 to configure the environment, disable system pop-ups, and set feature flags. In this way, the framework can automate the build download and installation process.
Exemplary servers include a mobile application server 64, a web application server 66 and a data server 70. Although not shown in FIG. 4, as noted above, the enterprise system 60 may also include a cryptographic server for performing cryptographic operations and providing cryptographic services. The cryptographic server can also be configured to communicate and operate with a cryptographic infrastructure. The enterprise system 60 may also include one or more data storage elements for storing and providing data for use in such services, such as data storage for storing client data 68.
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15
Mobile application server 64 can access other resources of the enterprise system 60 to carry out requests made by, and to provide content and data to, a mobile application on client device. In certain example embodiments, mobile application server 64 supports a mobile banking application to provide payments from one or more accounts of user, among other things.
The financial data may include any data related to or derived from financial values or metrics associated with customers of a financial institution system (i.e. the enterprise system 60 in this example), for example, account balances, transaction histories, line of credit available, credit scores, mortgage balances, affordability metrics, investment account balances, investment values and types, among many others. Other metrics can be associated with the financial data, such as financial health data that is indicative of the financial health of the users of the client devices.
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15
CPST Doc: 501676.1 Date Recue/Date Received 2023-06-15
Claims (66)
a processor;
a communications module coupled to the processor; and a memory coupled to the processor, the memory storing computer executable instructions that when executed by the processor cause the processor to:
integrate an application testing environment with an application development environment by directly connecting a testing environment interface coupled to a testing execution module to a development environment interface coupled to a repository used by the application development environment to store build files generated in the application development environment, for each of at least one device type;
determine that a new device type is to be added to the application testing environment;
automatically add the new device type to an application testing framework in the application testing environment;
automatically request by the testing environment via the direct connection from the repository, a current build file for each of the at least one device type, including a new or current build file for the new device type;
automatically receive via the direct connection, from the repository, the current or a new build file for each device type;
deploy each new or current build file on a respective device type;
initiate at least one test on each device type based on a simulation of the device operating according to the new or current build file and obtain test result data; and automatically feedback the test result data via the direct connection to the application development environment.
determine a testing time;
initiate the request at the testing time;
obtain test results for the at least one test; and send data associated with the at least one test to the development environment.
request and receive the new or current build file for the new device type separately from the automatic request to obtain the current build file for at least one existing device type.
log testing data for a plurality of tests; and compare the plurality of tests for at least one performance metric using logged data.
integrating an application testing environment with an application development environment by directly connecting a testing environment interface coupled to a testing execution module to a development environment interface coupled to a repository used by the application development environment to store build files generated in the application development environment, for each of at least one device type;
determining that a new device type is to be added to the application testing environment;
automatically adding the new device type to an application testing framework in the application testing environment;
automatically requesting by the testing environment via the direct connection from the repository, a current build file for each of the at least one device type, including a new or current build file for the new device type;
automatically receiving via the direct connection, from the repository, the current or a new build file for each device type;
deploying each new or current build file on a respective device type;
initiating at least one test on each device type based on a simulation of the device operating according to the new or current build file and obtain test result data;
and automatically feeding back the test result data via the direct connection to the application development environment.
determining a testing time;
initiating the request at the testing time;
obtaining test results for the at least one test; and sending data associated with the at least one test to the development environment.
requesting and receiving the new or current build file for the new device type separately from the automatic request to obtain the current build file for at least one existing device type.
logging testing data for a plurality of tests; and comparing the plurality of tests for at least one performance metric using logged data.
integrating an application testing environment with an application development environment by directly connecting a testing environment interface coupled to a testing execution module to a development environment interface coupled to a repository used by the application development environment to store build files generated in the application development environment, for each of at least one device type;
determining that a new device type is to be added to the application testing environment;
automatically adding the new device type to an application testing framework in the application testing environment;
automatically requesting by the testing environment via the direct connection from the repository, a current build file for each of the at least one device type, including a new or current build file for the new device type;
automatically receiving via the direct connection, from the repository, the current or a new build file for each device type;
deploying each new or current build file on a respective device type;
initiating at least one test on each device type based on a simulation of the device operating according to the new or current build file and obtain test result data;
and automatically feeding back the test result data via the direct connection to the application development environment.
determining a testing time;
initiating the request at the testing time;
obtaining test results for the at least one test; and sending data associated with the at least one test to the development environment.
requesting and receiving the new or current build file for the new device type separately from the automatic request to obtain the current build file for at least one existing device type.
logging testing data for a plurality of tests; and comparing the plurality of tests for at least one performance metric using logged data.
a processor;
a communications module coupled to the processor; and a memory coupled to the processor, the memory storing computer executable instructions that when executed by the processor cause the processor to:
determine that a new device type is to be added to an application testing environment;
automatically add the new device type to an application testing framework in the application testing environment;
automatically request via a connection to a repository used by an application development environment to store build files generated in the application development environment, a new or current build file for the new device type, wherein the application testing environment is integrated with the application development environment and automatically provides stored build files for the new device type;
automatically receive via the connection, from the repository, the new or current build file for the new device type;
deploy the new or current build file on the new device type and initiate at least one test on the new device type based on a simulation of devices operating according to the new or current build file; and wherein test result data of the deployment is stored for later use.
request and receive the new or current build file for the new device type separately from an automatic request to obtain a current build file for at least one existing device type.
automatically feedback the test result data via the connection to the application development environment.
directly connect a testing environment interface coupled to a testing execution module to a development environment interface coupled to the repository used by the application development environment to store build files generated in the application development environment, for each of at least one device type, including the new device type.
determine a testing time;
initiate the request at the testing time;
obtain test results for the at least one test; and send data associated with the at least one test to the development environment.
log testing data for a plurality of tests; and compare the plurality of tests for at least one performance metric using logged data.
determining that a new device type is to be added to an application testing environment;
automatically adding the new device type to an application testing framework in the application testing environment;
automatically requesting via a connection to a repository used by an application development environment to store build files generated in the application development environment, a new or current build file for the new device type, wherein the application testing environment is integrated with the application development environment and automatically provides stored build files for the new device type;
automatically receiving via the connection, from the repository, the new or current build file for the new device type;
deploying the new or current build file on the new device type and initiating at least one test on the new device type based on a simulation of devices operating according to the new or current build file; and wherein test result data of the deployment is stored for later use.
requesting and receiving the new or current build file for the new device type separately from an automatic request to obtain a current build file for at least one existing device type.
automatically feeding back the test result data via the connection to the application development environment.
directly connecting a testing environment interface coupled to a testing execution module to a development environment interface coupled to the repository used by the application development environment to store build files generated in the application development environment, for each of at least one device type, including the new device type.
determining a testing time;
initiating the request at the testing time;
obtaining test results for the at least one test; and sending data associated with the at least one test to the development environment.
logging testing data for a plurality of tests; and comparing the plurality of tests for at least one performance metric using logged data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA3077762A CA3077762C (en) | 2020-04-09 | 2020-04-09 | System and method for automated application testing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA3077762A CA3077762C (en) | 2020-04-09 | 2020-04-09 | System and method for automated application testing |
Publications (2)
Publication Number | Publication Date |
---|---|
CA3077762A1 CA3077762A1 (en) | 2021-10-09 |
CA3077762C true CA3077762C (en) | 2024-02-06 |
Family
ID=78005332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA3077762A Active CA3077762C (en) | 2020-04-09 | 2020-04-09 | System and method for automated application testing |
Country Status (1)
Country | Link |
---|---|
CA (1) | CA3077762C (en) |
-
2020
- 2020-04-09 CA CA3077762A patent/CA3077762C/en active Active
Also Published As
Publication number | Publication date |
---|---|
CA3077762A1 (en) | 2021-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11640351B2 (en) | System and method for automated application testing | |
US11178207B2 (en) | Software version control without affecting a deployed container | |
US11726897B2 (en) | System and method for testing applications | |
US11520686B2 (en) | System and method for facilitating performance testing | |
US20150370674A1 (en) | Tenant provisioning for testing a production multi-tenant service | |
US11360765B2 (en) | Metadata driven serverless functions in a multitenant environment | |
US20160371071A1 (en) | Account-based software upgrades in a multi-tenant ecosystem | |
US10896032B2 (en) | System and method for certifying and deploying instruction code | |
US9513948B2 (en) | Automated virtual machine provisioning based on defect state | |
US11243868B2 (en) | Application containerization based on trace information | |
CA3077762C (en) | System and method for automated application testing | |
US10176062B2 (en) | Cloud servers and methods for handling dysfunctional cloud services | |
US11394668B1 (en) | System and method for executing operations in a performance engineering environment | |
US10470015B1 (en) | System with automatic creation of application-orchestration widgets for multi-application interaction | |
CA3077987A1 (en) | System and method for testing applications | |
CA3107004C (en) | System and method for facilitating performance testing | |
US20230418734A1 (en) | System And Method for Evaluating Test Results of Application Testing | |
US20220245060A1 (en) | System and Method for Automated Testing | |
US11822461B2 (en) | Remote debugging of cloud application | |
US20230418722A1 (en) | System, Device, and Method for Continuous Modelling to Simiulate Test Results | |
KR102620693B1 (en) | Electronic apparatus for providing configuration for application testing and method thereof | |
US20230359549A1 (en) | Regression testing for web applications | |
CA3106998A1 (en) | System and method for executing operations in a performance engineering environment | |
CA3108166A1 (en) | System and method for automated testing | |
CA3165228A1 (en) | System, device, and method for continuous modelling to simulate test results |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |
|
EEER | Examination request |
Effective date: 20220818 |