Squish Initialization Files
.ini
Files
Squish uses some .ini
files to control some aspects of the command line tools and the squishide
's behavior. In general these files should not be edited; instead use the squishide
and Environment Variables to change any settings.
The .ini
files include ide.ini
, ocr.ini
, paths.ini
, and server.ini
. These files are stored in the %APPDATA%\froglogic\Squish\ver1
folder on Windows and the $HOME/.squish/ver1
directory on Unix-like systems such as Linux. In addition, for Squish for Qt editions there is a file called qtwrapper.ini
which is stored in the <SQUISHDIR>/etc
directory.
Testing Qt Applications on Windows
If you are testing Qt applications on Windows that are not deployed or tested on other platforms, you can force Squish to use native Windows dialogs for opening files and for printing, for example. To do this, edit the qtwrapper.ini
file. You might have to create the file in the <SQUISHDIR>/etc
directory. Use a plain text editor to add a new line to the General group's entry, which might have to creat, so that you have:
[General] UseNativeDialogs = 1
With this in place, Squish will use native dialogs when running Qt applications on Windows. Do not do this for applications that are to be tested cross-platform with the same Squish tests.
paths.ini
The paths.ini
file is used to store various paths. For example, where global scripts are stored. For global scripts, which are stored under key "GlobalScriptDirs", when using the String findFile(where, filename) function to find a script file to pass to the source(filename) function, String findFile(where, filename) first looks in the test case's scripts directory, then in the test suite's shared scripts directory, then in the paths listed in the paths.ini
file, and finally in the directories listed in the SQUISH_SCRIPT_DIR
environment variable. (The search stops as soon as the file is found.) The paths.ini
file shouldn't need to be hand edited (see the Global Scripts view), but if you move your Squish setup to another system you will want to copy this file—assuming that you use the same paths of course.
ocr.ini
The ocr.ini
file is used to store parameters relevant to the OCR functions like ScreenRectangle waitForOcrText(text, [parameterMap], [searchRegion]) or Boolean test.ocrTextPresent(text, [parameterMap], [searchRegion]). The settings in the ocr.ini
can be edited easily using the OCR pane. The currently available options are:
[General] DefaultEngine = "Tesseract" [Tesseract] InstallPath/40 = "/path/to/tesseract-for-squish-4.x.y" [OCRSpace] ApiKey = "XXXXXXXXXXXXXXX" ApiEndpoint = "https://api.ocr.space/parse/image" [Rekognition] ApiKeyId = "XXXXXXXXXXXXXXXXXXXX" ApiKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" Region = "eu-west-1"
DefaultEngine
in the General
section is the default OCR engine used by Squish. Currently supported values are Tesseract
, OCRSpace
and Rekognition
which correspond to the Tesseract OCR, OCR.Space and Amazon Rekognition Text respectively.
InstallPath/40
in the Tesseract
section is the installation path of the Tesseract for Squish package.
ApiKey
in the OCRSpace
section is the secret key used to authenticate the user with the OCR.Space service. You can request an API key for the OCR.Space service here.
ApiKeyId
and ApiKey
in the Rekognition
section are the secret key ID and the secret access key used to authenticate the user with the Amazon Rekognition service. Instructions to create an API key set for the Amazon Rekognition service are available here.
Region
in the Rekognition
section is the name of the regional server used with the Amazon Rekognition service. The current list of servers that support Rekognition is available here.
squish.ini
The squish.ini
file is used to store some important Squish settings, so it should be edited with care.
One of the file's General
section entry's keys is Wrappers/Qt/InitScripts
, and its value is a comma-separated list of Tcl files used to initialize Squish for Qt (no matter what scripting language is used for Qt tests). If you would like to enable or disable event compression (e.g., enable to combine lots of small mouse moves into a single mouse move) you can do so by adding a new Tcl file to this entry's list called eventcompression.tcl
. This file should contain one or more lines such as this:
enableEventCompression GLWidget false
Here, event compression for GLWidgets has been switched off. You can have as many lines of this form as you like so long as each one has the same format with the second word being the name of the relevant class and the third word being true
or false
.
ignoredauts.txt
Squish for macOS, and Unix versions of Squish for Qt, and Squish for Tk, read a file at startup, <SQUISHDIR>/etc/ignoredauts.txt
, if it exists. The file is a list of process names, one per line. On Linux each process name is the same name as the executable binary file; on other systems it is the name used by the ps or top programs. Squish will not hook into any process listed in this file. This blacklist exists to provide a last resort means of stopping Squish from hooking into a sub-processes launched by an AUT that would be adversely affected by an attempt to hook into it—for example, it might terminate prematurely. If you have a problem with hooking into a sub-process it is best to contact Qt Support Center for advice before editing this file.
© 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.