Automated background testing in remote device infrastructure
AssigneeBrowserStack Limited
InventorsAyush Kumar Sharma, Varun Sood
Life of this patent
Estimating the term…
Abstract
In a remote testing infrastructure, an automated background testing (ABT) feature can include injecting remote testing framework and libraries into an executable package folder of a user application. The injected framework can modify the user application to include the modules for automated background testing. In some embodiments, the modified application executes a communication client to listen to display change events detected by a web agent and a device logger. Upon receiving a display change event, the application can capture accessibility data of the application. A rule engine can analyze accessibility compliance of the application, flag or trigger repair of accessibility issues.
Claims20
A method comprising:
- receiving a compiled user application package folder;
- inserting a remote device infrastructure framework library into the package folder;
- identifying the application executable file in the package folder;
- generating a modified user application by inserting a binary instruction load command, among processor-level, load instructions of the executable file, the load command comprising a processor-level instruction to load a remote testing framework, the remote testing framework comprising:
- a uniform communication protocol (UCP) client, an accessibility tree capturing module, a screen layout capturing module;
- instantiating a web agent;
- the web agent, capturing system events, corresponding to the remote device;
- a device logger, intercepting the remote device events logged by the web agent;
- instantiating a UCP server in the device logger;
- the device logger, detecting a screen change event, relevant to accessibility testing;
- the device logger issuing, via the UCP server, a screen change event notification, notifying the modified user application of the screen change event;
- the user application, receiving the screen change event notification, via the UCP client;
- the user application, upon receiving the notification of screen change event, capturing, via the accessibility tree capturing module of the remote testing framework, an accessibility tree of the user application and capturing, via the screen layout capturing module of the remote testing framework, a screen layout of the user application;
- a rule engine, receiving the accessibility tree and the screen layout;
- the rule engine detecting accessibility compliance of user application, based on applying a set of accessibility rules to the accessibility tree and the screen layout;
- and
- a pusher service, generating a user interface element, comprising an accessibility report, based on the detected accessibility compliance.
A non-transitory computer storage that stores executable program instructions that, when executed by one or more computing devices, configure the one or more computing devices to perform operations comprising:
- receiving a compiled user application package folder;
- inserting a remote device infrastructure framework library into the package folder;
- identifying the application executable file in the package folder;
- generating a modified user application by inserting a binary instruction load command, among processor-level, load instructions of the executable file, the load command comprising a processor-level instruction to load a remote testing framework, the remote testing framework comprising:
- a uniform communication protocol (UCP) client, an accessibility tree capturing module, a screen layout capturing module;
- instantiating a web agent;
- the web agent, capturing system events, corresponding to the remote device;
- a device logger, intercepting the remote device events logged by the web agent;
- instantiating a UCP server in the device logger;
- the device logger, detecting a screen change event, relevant to accessibility testing;
- the device logger issuing, via the UCP server, a screen change event notification, notifying the modified user application of the screen change event;
- the user application, receiving the screen change event notification, via the UCP client;
- the user application, upon receiving the notification of screen change event, capturing, via the accessibility tree capturing module of the remote testing framework, an accessibility tree of the user application and capturing, via the screen layout capturing module of the remote testing framework, a screen layout of the user application;
- a rule engine, receiving the accessibility tree and the screen layout;
- the rule engine detecting accessibility compliance of user application, based on applying a set of accessibility rules to the accessibility tree and the screen layout;
- and
- a pusher service, generating a user interface element, comprising an accessibility report, based on the detected accessibility compliance.
A system comprising a processor, the processor configured to perform operations comprising:
- receiving a compiled user application package folder;
- inserting a remote device infrastructure framework library into the package folder;
- identifying the application executable file in the package folder;
- generating a modified user application by inserting a binary instruction load command, among processor-level, load instructions of the executable file, the load command comprising a processor-level instruction to load a remote testing framework, the remote testing framework comprising:
- a uniform communication protocol (UCP) client, an accessibility tree capturing module, a screen layout capturing module;
- instantiating a web agent;
- the web agent, capturing system events, corresponding to the remote device;
- a device logger, intercepting the remote device events logged by the web agent;
- instantiating a UCP server in the device logger;
- the device logger, detecting a screen change event, relevant to accessibility testing;
- the device logger issuing, via the UCP server, a screen change event notification, notifying the modified user application of the screen change event;
- the user application, receiving the screen change event notification, via the UCP client;
- the user application, upon receiving the notification of screen change event, capturing, via the accessibility tree capturing module of the remote testing framework, an accessibility tree of the user application and capturing, via the screen layout capturing module of the remote testing framework, a screen layout of the user application;
- a rule engine, receiving the accessibility tree and the screen layout;
- the rule engine detecting accessibility compliance of user application, based on applying a set of accessibility rules to the accessibility tree and the screen layout;
- and
- a pusher service, generating a user interface element, comprising an accessibility report, based on the detected accessibility compliance.
Dependencies are inferred from the claim text.