Web Proxy

There are two ways to work with web applications—directly, or using the web proxy mechanism introduced in Squish 4.1. For testing web applications with Safari on macOS, Microsoft Internet Explorer on Windows, or Firefox on Windows/MacOSX/Linux/Unix it is best not to use the proxy mechanism since the mechanism imposes a few limitations.

For all other browsers, including Safari on Windows or iOS, the proxy mechanism must be used. If the proxy mechanism is used the key limitations that apply are that native dialogs and file-upload fields are not supported, it is not possible to use a single proxy for multiple parallel test recordings/replays, the HTTPS protocol is not supported, and screenshot verifications on remote browsers (e.g., browsers running on iPhones and iPads) are not supported.

In addition, when using the proxy mechanism, some browsers may show a progress indicator throughout test recording and replay—this is to be expected because Squish is in constant communication with the web application.

The web proxy mechanism is set up by changing the web editions configuration, telling the Squish IDE to use the web proxy, and by running the web proxy itself. For the web edition configuration see the etc/webwrapper.ini file, in particular, ProxyConnectAddress, ProxyImplicitStart and ProxyStartBrowser. For the Squish IDE set the browser to use to be Web Proxy; (see Squish Preferences Child Panes).

The web proxy is in SQUISHDIR/bin/webproxy and its executable is called proxy. The proxy must be executed with a command line like the following:

$ $SQUISHDIR/bin/webproxy/proxy [<-H|--host> proxy-host] [<-p|--port> proxy-port] [listen-host] [listen-port]

The -H (or --host) option is used to specify the ip address on which to listen as a HTTP proxy; it defaults to localhost. The -p (or --port) option is used to specify the port on which to listen as a HTTP proxy; it defaults to 8000. These two options can be followed by the hostname and/or port number that Squish must use to communicate with the web proxy. If they are not specified, they default to localhost as the hostname and 8001for the port number—these must match the values set using the web edition configuration's ProxyConnectAddress option.

For an example of the web proxy mechanism in use see Browsers on mobile devices.

© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners.
The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation.
Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.