IP Library Granted Patent US 7,882,179
Granted Patent B2
US 7,882,179 · App. 10/710,120 · Granted Feb 1, 2011

Computer system tools and method for development and testing

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,882,179
App. No.
10/710,120
Granted
Feb 1, 2011
Kind
B2
Abstract

The current invention allows a user to evaluate web pages, emails, or software across different operating systems without requiring the user to have the operating system being tested. The patent has a novel method to (1) generate screen captures in parallel, (2) create counter-anti-spam reporting and (3) a method to remotely interact any arbitrary operating system (DVA).

Claims (57)

1. A physical computer readable medium having computer readable code thereon, the medium comprising:

instructions for identifying a set of servers each having an independent operating system and responsive to a central server for launching a browser responsive to a Uniform Resource Locator (URL) request;

instructions for receiving a plurality of requests from each of a plurality of users, each of the requests indicative of a URL-denoted target web page for which analysis is sought and an operating system to which the target web page is responsive;

for each of the plurality of requests:

instructions for identifying a target server of the set of servers having the corresponding operating system;

instructions for generating a script file for launching the browser on the target server, the script file specific to the operating system;

instructions for launching a browser and ancillary components on the target server responsive to the operating system and the request, the launching on the target server remote from the central server;

instructions for reporting a connection medium through which the launched browser is accessible;

instructions for fulfilling, by the browser, the URL request by loading a set of elements in the target web page denoted by the URL, each launched browser defining a URL-Browser combination;

instructions for executing, via the reported connection medium, the target web page; and

instructions for identifying when the target web page is delivered, identifying delivery completion further comprising:

building a tree of elements defining the target web page;

instructions for identifying each element as a terminal object or expandable object, the expandable objects capable of loading other elements;

instructions for marking each element as fetched or unfetched, fetched indicative of complete rendering of an element; and

instructions for recursively traversing the tree to confirm each element is marked as fetched;

instructions for generating analysis results by initiating a plurality of parallel screen captures for each of the executing web pages upon determining web page delivery completion;

instructions for terminating the browser session by generating a browser kill instruction from the central server, the kill instruction generated in response to an indication of target web page completion from the target server that launched the browser, wherein the terminating terminates the ancillary components; and

instructions for identifying of which anti-spam measures were responsive to the loaded elements for a particular request.

2. The physical computer readable medium of claim 1 , further comprising:

instructions for receiving a request from a user;

instructions for generating a capture order from the request;

instructions for parsing the capture order;

instructions for sending the capture order to individual processing units, the capture orders generated in parallel; and

instructions for delivering results to the user.

3. The physical computer readable medium of claim 1 further comprising instructions for choosing the individual processing units based on an ability of the individual processing units to perform, the ability based on corresponding operating systems.

4. The physical computer readable medium of claim 1 wherein the computer readable code thereon is Internet based.

5. The physical computer readable medium of claim 1 wherein the computer readable code thereon is network based.

6. The physical computer readable medium of claim 1 wherein the computer readable code thereon is written in Java.

7. The physical computer readable medium of claim 1 further comprising instructions for selecting a processing means from a server farm and establishing a RFB connection for remote control.

8. The physical computer readable medium of claim 1 further comprising instructions for initiating billing for the RFB connection.

9. The physical computer readable medium of claim 1 further comprising instructions for releasing the processing means to the server farm when it is done processing.

10. A method for simultaneously analyzing a plurality of web page requests receivable by target systems comprising:

identifying a set of servers each having an independent operating system and responsive to a central server for launching a browser responsive to a Uniform Resource Locator (URL) request;

receiving a plurality of requests from each of a plurality of users, each of the requests indicative of a URL-denoted target web page for which analysis is sought and an operating system to which the target web page is responsive;

for each of the plurality of requests:

identifying a target server of the set of servers having the corresponding operating system;

generating a script file for launching the browser on the target server, the script file specific to the operating system;

launching a browser and ancillary components on the target server responsive to the operating system and the request, the launching on the target server remote from the central server;

reporting a connection medium through which the launched browser is accessible;

fulfilling, by the browser, the URL request by loading a set of elements in the target web page denoted by the URL, each launched browser defining a URL-Browser combination;

executing, via the reported connection medium, the target web page; and

identifying when the target web page is delivered, identifying delivery completion further comprising:

building a tree of elements defining the target web page;

identifying each element as a terminal object or expandable object, the expandable objects capable of loading other elements;

marking each element as fetched or unfetched, fetched indicative of complete rendering of an element; and

recursively traversing the tree to confirm each element is marked as fetched;

generating analysis results by initiating a plurality of parallel screen captures for each of the executing web pages upon determining web page delivery completion;

terminating the browser session by generating a browser kill instruction from the central server, the kill instruction generated in response to an indication of target web page completion from the target server that launched the browser, wherein the terminating terminates the ancillary components; and

identifying of which anti-spam measures were responsive to the loaded elements for a particular request.

11. The method of claim 10 wherein the connection medium is a socket providing an interprocess communication medium (IPC) for initiating user access to the target web page.

12. The method of claim 11 wherein executing the target web page further comprises writing a script indicative of the launched browser and the target web page and invoking the web page via the script.

13. The method of claim 12 wherein the terminal objects are binary objects for rendering and the expandable objects are HTML objects, the HTML objects expandable into other HTML objects and binary objects.

14. The method of claim 10 wherein identifying when the target web page is delivered comprises:

determining that the target web page is delivered;

generating a notification associated with a delivery of the target web page;

transmitting the notification identifying that the target web page is delivered; and

utilizing the notification of delivery of the target web page to invoke at least one of the plurality of parallel screen captures for each of the executing web pages, the notification utilized to minimize idle time, and to prevent the plurality of parallel screen captures from occurring prior to the delivery of the target web page associated with each of the respective screen captures.

Assignments (14)
SECURITY INTEREST Recorded Dec 16, 2022
From: DYNATRACE LLC
To: BMO HARRIS BANK N.A.
Reel/Frame 062142/0187 →
RELEASE OF SECURITY INTEREST IN PATENTS AT R/F 046923/0557 Recorded Dec 5, 2022
From: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
To: DYNATRACE, LLC
Reel/Frame 062056/0562 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL RECORDED AT R/F 46923/0528 Recorded Aug 6, 2019
From: JEFFERIES FINANCE LLC, COLLATERAL AGENT
To: DYNATRACE LLC
Reel/Frame 049966/0518 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Aug 24, 2018
From: DYNATRACE LLC
To: JEFFERIES FINANCE LLC
Reel/Frame 046923/0557 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Aug 24, 2018
From: DYNATRACE LLC
To: JEFFERIES FINANCE LLC
Reel/Frame 046923/0528 →
RELEASE OF FIRST LIEN PATENT SECURITY AGREEMENT RECORDED AT REEL\FRAME 035200\0973 AND 035200\0955 Recorded Aug 23, 2018
From: JEFFERIES FINANCE LLC
To: DYNATRACE LLC; COMPUWARE CORPORATION
Reel/Frame 046922/0886 →
TERMINATION OF SECURITY INTEREST IN PATENTS AT REEL/FRAME NO. 035201/0065 Recorded Feb 14, 2018
From: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
To: COMPUWARE CORPORATION
Reel/Frame 045325/0384 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2015
From: COMPUWARE CORPORATION
To: DYNATRACE LLC
Reel/Frame 035497/0057 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Mar 13, 2015
From: COMPUWARE CORPORATION
To: JEFFERIES FINANCE, LLC
Reel/Frame 035201/0065 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Mar 13, 2015
From: COMPUWARE CORPORATION
To: JEFFERIES FINANCE, LLC
Reel/Frame 035200/0973 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE TO 12/31/2009 AND ASSIGNEE ADDRESS TO C/O COMPUWARE CORPORATION, ONE CAMPUS MARTIUS, DETROIT, MI 48226 PREVIOUSLY RECORDED ON REEL 023741 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR: GOMEZ, INC. ASSIGNEE: GOMEZ ACQUISITION CORP.. Recorded Jan 8, 2010
From: GOMEZ, INC.
To: GOMEZ ACQUISITION CORP.
Reel/Frame 023750/0684 →
MERGER Recorded Jan 6, 2010
From: GOMEZ, INC.
To: GOMEZ ACQUISITION CORP.
Reel/Frame 023741/0001 →
MERGER Recorded Jan 6, 2010
From: GOMEZ ACQUISITION CORP.
To: COMPUWARE CORPORATION
Reel/Frame 023741/0343 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2008
From: WITCHEL, JOHN
To: GOMEZ, INC.
Reel/Frame 020903/0420 →