Inter-process communication automated testing framework

US10540269B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10540269-B2
Application numberUS-201715651225-A
CountryUS
Kind codeB2
Filing dateJul 17, 2017
Priority dateMay 2, 2014
Publication dateJan 21, 2020
Grant dateJan 21, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Application developers may develop applications or portions of application that do not have a corresponding user interface. Testing non-user interface elements of an application may require application developers to develop corresponding user interface elements for all or a portion of the executable code included in the application. Developers may test non-user interface elements of an application or library by wrapping the executable code in a sample application managed by a test harness. The test harness may transmit test operations configured to test the non-user interface elements of the application to the sample application over an inter-process communication channel. The sample application may execute the test and return the results of the test to the test harness using inter-process communication methods.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method, comprising: obtaining a test operation of an application test, the test operation including a library call to a software library; executing, by a computer system, a test harness to manage the execution of the application test, the test harness is isolated from a sample application by a process boundary enforced by an operating system, executed by the computer system, such that the test harness lacks an interface to communicate directly with the sample application; causing the test harness to execute the test operation such that the library call is performed by execution of the sample application by the computer system, wherein the sample application is isolated from a broker of the computer system, wherein the broker utilizes a storage location to provide a result of performing the library call, generated by the sample application, to the test harness; determining the result of performing the library call; causing the broker to store the result in the storage location and provide the result to the test harness; and validating, by the test harness, the result based at least in part on the test operation. 2. The computer-implemented method of claim 1 , wherein the broker utilizes an inter-process communications channel to provide the result, generated by the sample application, to the test harness. 3. The computer-implemented method of claim 1 , wherein the test harness is operated by a first computing device and the sample application is executed by a second computing device. 4. The computer-implemented method of claim 1 , wherein the computer implemented method further comprises initiating a time out interval at an expiration of which, if the test harness has not received the result, the test operation is deemed failed. 5. A system, comprising: at least one computing device having one or more processors implementing one or more services, wherein the one or more services: cause the at least one computing device to execute an automated testing framework, a broker, and a sample application, where the automated testing framework and the sample application are isolated by a process boundary enforced by an operating system executed by the at least one computing device such that the automated testing framework lacks an interface to communicate directly with the sample application, and the sample application communicates with the automated testing framework via the broker; obtain a test operation for testing a portion of executable code of the sample application; cause the sample application to execute the test operation, wherein the sample application is isolated from the broker, wherein the broker utilizes a storage device to provide a result of the test operation, generated by the sample application, to the automated testing framework; and cause the broker to store the result of the test operation in the storage device and provide the result of the test operation to the automated testing framework obtained from the sample application. 6. The system of claim 5 , wherein the portion of executable code of the sample application, when executed by the at least one computing device, causes the at least one computing device obtain at least a portion of the result from at least one other computer system. 7. The system of claim 5 , wherein providing the result further comprises storing the result in a secure digital (SD) card connected to the at least one computing device. 8. The system of claim 5 , wherein providing the result further comprises emulating, by the broker, a device connected to the at least one computing device. 9. The system of claim 5 , wherein the test operation is obtained from a testing service responsible for providing the automated testing framework. 10. The system of claim 5 , wherein the one or more services further cause the result to be formatted for display in a user interface of the automated testing framework. 11. The system of claim 5 , wherein the broker is an application provided by an operating system of the at least one computing device. 12. A non-transitory computer-readable storage medium having stored thereon executable instructions that, as a result of being executed by one or more processors of a computer system, cause the computer system to at least: receive a test script including a test operation to test a library call of a sample application isolated by a process boundary, enforced by an operating system executed by the computer system, from a test harness responsible for executing the test script such that the test harness lacks an interface to communicate directly to the sample application; execute the test script by at least causing the sample application to execute the library call, wherein the sample application is isolated from a broker, where the broker utilizes a storage device to provide a result of the test script, to the test harness; obtain and store in the storage device, by the broker, the result of the test script; and provide the result of the test script to the test harness. 13. The non-transitory computer-readable storage medium of claim 12 , wherein the instructions that cause the computer system to obtain the result of the test script further include instructions that cause the computer system to obtain the result through an inter process communications channel. 14. The non-transitory computer-readable storage medium of claim 12 , wherein the instructions that cause the computer system to obtain the result of the test script further include instructions that cause the computer system to obtain the result through a file system implemented by the computer system. 15. The non-transitory computer-readable storage medium of claim 12 , wherein the instructions that cause the computer system to obtain the result of the test script further include instructions that cause the computer system to obtain the result through a device of the computer system emulated by the broker. 16. The non-transitory computer-readable storage medium of claim 12 , wherein the instructions that cause the computer system to execute the test script further include instructions that cause the computer system to transmit a command to execute the test script to another computer system responsible for executing the sample application. 17. The non-transitory computer-readable storage medium of claim 12 , wherein the instructions that cause the computer system to obtain the result of the test script further include instructions that cause the computer system to obtain the result through a memory location of the computer system accessible to the broker. 18. The non-transitory computer-readable storage medium of claim 12 , wherein at least a portion of the library call includes a non-user interface element of a software library loaded into a memory associated with the sample application.

Assignees

Inventors

Classifications

  • for test execution, e.g. scheduling of test suites · CPC title

  • for test results analysis · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10540269B2 cover?
Application developers may develop applications or portions of application that do not have a corresponding user interface. Testing non-user interface elements of an application may require application developers to develop corresponding user interface elements for all or a portion of the executable code included in the application. Developers may test non-user interface elements of an applicat…
Who is the assignee on this patent?
Amazon Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/3688. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 21 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).