System and method for software test analysis
US-2024419581-A1 · Dec 19, 2024 · US
US11960388B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11960388-B2 |
| Application number | US-202117245493-A |
| Country | US |
| Kind code | B2 |
| Filing date | Apr 30, 2021 |
| Priority date | Dec 12, 2011 |
| Publication date | Apr 16, 2024 |
| Grant date | Apr 16, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A system and method are provided for data collection and analysis of information related to applications. Specifically, the developer of the application may install analytic software, which may be embodied as a software development kit (SDK), on an integrated development environment (“IDE”) associated with the developer, wherein the analytic software may be installed with a wizard-like interface having a series of easy to follow instructions. Once installed, the application, with the analytic software incorporated therein, may be provided and installed on a plurality of end user devices. Thereafter, the analytic software may work in conjunction with analytic processing logic to assist the developer in obtaining pertinent information related to bugs associated with the application that is being executed on an end user device.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method when executed by data processing hardware of a user device causes the data processing hardware to perform operations comprising: receiving crash data associated with a crashed application that previously executed on the user device; receiving a first memory address of a current instruction pointer of the crashed application; receiving relaunched data associated with a relaunched application relaunched on the user device, the relaunched application the same as the crashed application; receiving a second memory address of a current instruction pointer of the relaunched application; determining a memory address offset between the first memory address of the current instruction pointer of the crashed application and the second memory address of the current instruction pointer of the relaunched application, the memory address offset representing a relative slide between a starting address of the crashed application and a starting address of the relaunched application; determining crash information associated with the crashed application using the memory address offset; and providing the crash information to a user of the user device. 2. The method of claim 1 , wherein determining the memory address offset comprises generating a rebased instruction pointer associated with the crashed application. 3. The method of claim 2 , wherein generating the rebased instruction pointer comprises identifying a library from a list of libraries associated with code of the crashed application. 4. The method of claim 3 , wherein identifying the library from the list of libraries associated with the code of the crashed application comprises determining an address identifier associated with each library of the list of libraries. 5. The method of claim 4 , wherein the operations further comprise: generating a debased instruction pointer by subtracting a first start address associated with the current instruction pointer of the relaunched application from a second start address associated with the current instruction pointer of the crashed application; identifying the address identifier in a current list of libraries associated with the crashed application; and determining a library start address associated with the address identifier in the current list of libraries. 6. The method of claim 5 , wherein generating the rebased instruction pointer comprises adding a debased instruction pointer address to the library start address. 7. The method of claim 6 , wherein determining the memory address offset comprises obtaining a difference between the rebased instruction pointer and a resource address associated with the relaunched application. 8. The method of claim 1 , wherein determining the crash information associated with the crashed application comprises: determining symbolication of the crash data; and enabling the symbolication for future launches of the crashed application to the user of the user device. 9. The method of claim 8 , wherein determining symbolication of the crash data comprises using a dladdr( ) function that loads a symbol at a respective memory address. 10. The method of claim 1 , wherein the operations further comprise: after receiving crash data associated with the crashed application, determining a list of libraries used by the crashed application; and for each library in the list of libraries, determining a universally unique name and a start and end address associated with the crash data. 11. A system comprising: data processing hardware of a user device; and memory hardware in communication with the data processing hardware, the memory hardware storing instructions that when executed on the data processing hardware cause the data processing hardware to perform operations comprising: receiving crash data associated with a crashed application that previously executed on the user device; receiving a first memory address of a current instruction pointer of the crashed application; receiving relaunched data associated with a relaunched application relaunched on the user device, the relaunched application the same as the crashed application; receiving a second memory address of a current instruction pointer of the relaunched application; determining a memory address offset between the first memory address of the current instruction pointer of the crashed application and the second memory address of the current instruction pointer of the relaunched application, the memory address offset representing a relative slide between a starting address of the crashed application and a starting address of the relaunched application; determining crash information associated with the crashed application using the memory address offset; and providing the crash information to a user of the user device. 12. The system of claim 11 , wherein determining the memory address offset comprises generating a rebased instruction pointer associated with the crashed application. 13. The system of claim 12 , wherein generating the rebased instruction pointer comprises identifying a library from a list of libraries associated with code of the crashed application. 14. The system of claim 13 , wherein identifying the library from the list of libraries associated with the code of the crashed application comprises determining an address identifier associated with each library of the list of libraries. 15. The system of claim 14 , wherein the operations further comprise: generating a debased instruction pointer by subtracting a first start address associated with the current instruction pointer of the relaunched application from a second start address associated with the current instruction pointer of the crashed application; identifying the address identifier in a current list of libraries associated with the crashed application; and determining a library start address associated with the address identifier in the current list of libraries. 16. The system of claim 15 , wherein generating the rebased instruction pointer comprises adding a debased instruction pointer address to the library start address. 17. The system of claim 16 , wherein determining the memory address offset comprises obtaining a difference between the rebased instruction pointer and a resource address associated with the relaunched application. 18. The system of claim 11 , wherein determining the crash information associated with the crashed application comprises: determining symbolication of the crash data; and enabling the symbolication for future launches of the crashed application to the user of the user device. 19. The system of claim 18 , wherein determining symbolication of the crash data comprises using a dladdr( ) function that loads a symbol at a respective memory address. 20. The system of claim 11 , wherein the operations further comprise: after receiving crash data associated with the crashed application, determining a list of libraries used by the crashed application; and for each library in the list of libraries, determining a universally unique name and a start and end address associated with the crash data.
for test execution, e.g. scheduling of test suites · CPC title
Software maintenance or management · CPC title
in a data processing system embedded in a mobile device, e.g. mobile phones, handheld devices · CPC title
in a remote unit communicating with a single-box computer node experiencing an error/fault (remote testing G06F11/2294) · CPC title
Dumping, i.e. gathering error/state information after a fault for later diagnosis · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.