The content rendering capability of web browsers can be tested and compared across different web browsers. Testing with respect to restricted content is enabled utilizing a web browser to facilitate authentication. State information acquired by the web browser from a server can be employed to request restricted content for rendering by a number of target web browsers sought to be tested. Subsequently, representations of the restricted content produced by target web browsers can be rendered to a multi-browser display environment, for example.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A method of facilitating testing, comprising: employing at least one processor configured to execute computer-executable instructions stored in memory to perform the following acts: receiving an address of content to test multi-browser consistency; invoking a first web browser with the address of the content; receiving authentication information in the first web browser in response to a login request received by the first web browser from a server in place of the content; receiving state information from the server in response to transmission of valid authentication information to the server by a first web browser; requesting content from the server directly, without using a browser, with the state information, and a browser identifier of a second web browser, different from the first web browser, wherein the browser identifier identifies a web browser with which content will be rendered; receiving the content, specific to the second browser, from the server; and rendering a representation of the content, rendered by a second web-browser engine, in a multi-browser display environment configured to display a plurality of representations of content rendered by different web-browser engines in a single user interface.
The invention is a method for testing how different web browsers render the same web content. It involves using a first web browser to log in to a website requiring authentication. The system captures the state information (e.g., session cookies) provided by the server after login. Then, instead of using a browser, it directly requests the same content from the server using this captured state information, but specifies a different browser's identifier (user-agent). The server sends back content tailored for that second browser. Finally, the rendered output from the second browser is displayed alongside the output from the first browser in a single view for comparison.
2. The method of claim 1 further comprises saving the authentication information.
The method of testing web browser content, described above, further includes a step where the authentication information (e.g., username, password, cookies) from the first web browser is saved. This saved information can be reused later to avoid repeated logins during testing, streamlining the process of comparing content rendering across multiple browsers.
3. The method of claim 1 further comprises retrieving the authentication information from a data store.
The method of testing web browser content, as described where a first web browser is used to log in to a website requiring authentication, further includes retrieving the authentication information from a data store. The authentication information was previously saved (as per the description where authentication information is saved). By retrieving it from storage, the system avoids re-authenticating every time, saving time and resources during automated testing.
4. The method of claim 1 further comprises: submitting the content received in response to the request to a remote web browser engine; and receiving the representation of the content rendered by the remote web browser engine.
The method of testing web browser content, as described where a first web browser is used to log in to a website requiring authentication, further includes sending the content received from the server (targeted for the second browser) to a remote web browser engine. The rendered representation of the content is then received from that remote engine and displayed in the multi-browser display environment. This allows testing of browsers without needing them installed locally.
5. The method of claim 1 further comprise receiving a cookie saved by the first web browser that encapsulates the state information and submitting the cookie with a request for content from the server for the second web browser.
The method of testing web browser content, as described where a first web browser is used to log in to a website requiring authentication, further includes receiving a cookie saved by the first web browser. This cookie encapsulates the state information (e.g., session ID). The method then submits this cookie along with the request for content from the server, targeting the second web browser. This replicates the browser's session state, ensuring proper rendering of personalized or restricted content.
6. The method of claim 4 further comprises receiving a browser image as the representation of the content as rendered by the remote web browser engine.
The method of testing web browser content using a remote web browser engine (as in the description where content is sent to a remote web browser engine), where a representation of the rendered content is received, specifies that the received representation is a browser image. This means the system receives a screenshot or image of how the content was rendered by the remote browser, which it then displays in the multi-browser display.
7. The method of claim 1 further comprises sending the browser identifier as part of a user-agent string in a hypertext transport protocol header.
The method of testing web browser content, as described where a first web browser is used to log in to a website requiring authentication, further specifies that the browser identifier (for the second browser) is sent as part of the User-Agent string in the HTTP header. This is a standard way for a client (the testing system) to inform the server about the type and version of the browser it's emulating, allowing the server to provide browser-specific content.
8. The method of claim 1 further comprises sending the browser identifier comprising a browser name and version.
The method of testing web browser content, as described where a first web browser is used to log in to a website requiring authentication, clarifies that the browser identifier comprises a browser name and version. This enables the server to accurately tailor the content for the specific browser being tested, ensuring accurate comparison of rendering differences across browsers. For example, the identifier might be "Chrome 115" or "Firefox 102".
9. A system of facilitating testing, comprising: a processor coupled to a memory, the processor configured to execute the following computer-executable components stored in the memory: a acquisition component that acquires state information provided by a web server in response to successful authentication with the web server associated with procurement of restricted content by a first web browser; a content acquisition component that requests the restricted content specific to a second web browser, different from the first web browser, with the state information and a browser identifier of the second web browser that identifies a web browser with which content will be rendered; and a rendering component that renders images of the restricted content as displayed by the first web browser and the second web browser in a single display environment.
The invention describes a system for testing web browser compatibility. It has three key components: An "acquisition component" that obtains session state data from a web server after a first browser successfully authenticates. A "content acquisition component" that requests specific web content for a second, different browser, using the acquired state data and the second browser's identifier (user-agent). And a "rendering component" that displays how the first and second browsers render that content side-by-side for visual comparison.
10. The system of claim 9 , the browser identifier is a user-agent string in a hypertext transport protocol header.
The system for testing web browser compatibility, described above, specifies that the "browser identifier" is a user-agent string within an HTTP header. The user-agent string is a standard way for a browser to identify itself to a web server. This allows the testing system to request content as if it were the specified second browser.
11. The system of claim 9 further comprises a web browser component that accepts user identification information and acquires the state information.
The system for testing web browser compatibility, as described above, further includes a "web browser component" that allows a user to log in and obtain the session state data. This component acts like a regular web browser, enabling the system to handle authentication processes before requesting content for other browsers.
12. The system of claim 11 , the web browser component is further configured to enable navigation and selection of the restricted content.
In the system including a web browser component for authentication (as in the description where a web browser component accepts identification information), the web browser component also lets users browse and choose specific content to test. This provides a way for users to select the restricted content they want to compare across different browsers.
13. The system of claim 11 further comprises a storage component that stores the state information.
The system, which includes a web browser component for authentication (as in the description where a web browser component accepts identification information), has a "storage component" to save the session state data. This means the system can store authentication details (like cookies) and reuse them later without needing to re-authenticate each time.
14. The system of claim 9 , the second web browser is a remote browser.
The system for testing web browser compatibility, as described where components acquire state information, requests restricted content, and renders images of content, utilizes a remote browser as the second web browser. This allows the system to test rendering in browsers that are not installed locally.
15. The system of claim 9 , acquired state information is encapsulated in a cookie saved by the first web browser.
A system for managing state information in web applications involves acquiring state information from a first web browser and encapsulating that information in a cookie. The cookie is then saved by the first web browser, allowing the state information to be persistently stored and later retrieved. This system is designed to address challenges in maintaining user session data across multiple interactions with a web application, particularly in environments where server-side session storage is impractical or inefficient. By storing state information in a cookie, the system enables seamless state persistence without requiring server-side resources, reducing latency and improving scalability. The cookie-based approach also enhances security by allowing the state information to be encrypted or digitally signed, ensuring data integrity and authenticity. The system may further include mechanisms for validating the cookie upon retrieval, verifying that the state information has not been tampered with. Additionally, the system can support synchronization of state information between multiple web browsers or devices, enabling consistent user experiences across different access points. The cookie-based storage method simplifies state management by eliminating the need for complex server-side session handling, making it particularly suitable for distributed or cloud-based applications.
16. The system of claim 9 , the browser identifier comprises a browser name and version.
The system for testing web browser compatibility, as described where components acquire state information, requests restricted content, and renders images of content, specifies that the browser identifier includes the browser's name and version. This ensures the server sends back content specifically tailored for that particular browser version.
17. A computer-readable storage device having instructions stored thereon that enable at least one processor to perform a method upon execution, the method comprising: employing a first web browser to authenticate a user on a web server and identify content available on the web server after authentication; acquiring a set of one or more cookies received by the first web browser from the web server without intercepting the set of one or more cookies from network traffic; determining a browser identifier associated with a browser selected by a user for testing; requesting the content from the web server with the set of one or more cookies and the browser identifier of a second web browser, different from the first web browser, wherein the browser identifier identifies a browser with which content will be rendered; receiving the content, specific to the second web browser, from the web server; employing a web browser engine for the second web browser to render the content; and rendering an image produced by the web browser engine to a multi-browser display environment configured to enable display of a plurality of representations of content rendered by different web-browser engines in a single user interface.
The invention involves a computer program for testing website compatibility across browsers. It uses a first browser to log in to a website and captures the cookies the website sends back. Crucially, it acquires these cookies without sniffing network traffic, i.e. directly from the browser's API. To test another browser, the program specifies the second browser's identifier (user-agent) and uses the captured cookies to request the same content from the server. The server then sends content tailored to the second browser. The system uses a browser engine to render the content from the second browser and displays it next to the first browser's rendering for comparison.
18. The computer-readable storage device of claim 17 , the method further comprises saving the set of one or more cookies.
The method also involves saving the collected cookies.
19. The computer-readable storage device of claim 17 , the method further comprises employing the web browser engine at a remote location.
The computer program for testing website compatibility across browsers, as described where a first web browser authenticates on a web server and cookies are acquired, utilizes a remote location for the web browser engine. This enables testing on various browsers without requiring local installation, facilitating broader testing capabilities.
20. The computer-readable storage device of claim 17 , determining an identifier comprises determining a user-agent string in a hypertext transport protocol.
The computer program for testing website compatibility across browsers, as described where a first web browser authenticates on a web server and cookies are acquired, specifies that determining an identifier comprises determining a user-agent string in a hypertext transport protocol. The user-agent string allows the testing system to mimic a specific browser.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
April 8, 2011
May 2, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.