A test suite is a collection of one or more test cases (tests). Using a test suite is convenient since it makes it easy to share tests scripts and test data between tests.
Here, and throughout the tutorial, we will start by describing how to do things using the IDE, with the information for command line users following.
To begin with start up the Squish IDE, either by clicking or double-clicking the squishide icon, or by launching squishide from the taskbar menu or by executing squishide on the command line—whichever you prefer and that is suitable for the platform you are using. Once Squish starts up it will look similar to the screenshot—but probably slightly different depending on the windowing system, colors, fonts, and theme that you use, and so on.

Once Squish has started click | to pop-up the New Squish Test Case wizard (Section 16.3.6) shown below.

Enter a name for your test suite and choose the folder where you want
the test suite to be stored. In the screenshot we have called the test
suite suite_py and will put it inside the
addressbook folder. (For your own tests you might
use a more meaningful name such as "suite_addressbook"; we chose
"suite_py" because for the sake of the tutorial we will create several
suites, one for each scripting language that Squish supports.)
Naturally, you can choose whatever name and folder you prefer. Once the
details are complete, click to go on to the
Toolkit (or Scripting Language) page.
![]() | Toolkits |
|---|---|
Different versions of Squish support different toolkits—if your version only supports one toolkit, this page may not appear, and you may be taken directly to the Scripting Language page instead. And if you do get this page, the toolkits listed on it might be different from those shown here, depending on what options you built Squish with. |

If you get this wizard page, click the toolkit your AUT uses. For this example, we must click Qt since we are testing a Qt application. Then click to go to the Scripting Language page.
![]() | Scripting Languages |
|---|---|
Squish supports several different scripting languages, and different installations may include support for some or all of these—so the scripting languages shown in the screenshot may be different from those shown by your version of Squish. |

Choose whichever scripting language you want—the only constraint is that you can only use one scripting language per test suite. (So if you want to use multiple scripting languages, just create multiple test suites, one for each scripting language you want to use.) The functionality offered by Squish is the same for all languages. If you are new to scripting, Python is the easiest to learn and use, and arguably the best for readability and maintenance. Having chosen a scripting language, click once more to get to the wizard's last page.

If you are creating a new test suite for an AUT that Squish already
knows about, simply click the combobox to pop-down the list of AUTs and
choose the one you want. If the combobox is empty or your AUT isn't
listed, click the button to the right
of the combobox—this will pop-up a file open dialog from which you
can choose your AUT. In the case of Qt programs, the AUT is the
application's executable (e.g., addressbook.exe on
Windows). Once you have chosen the AUT, click
and Squish will create a sub-folder with
the same name as the test suite, and will create a file inside that
folder called suite.conf that contains the test
suite's configuration details. Squish will also register the AUT with
the squishserver. The wizard will then close and Squish's IDE will
look similar to the screenshot below.

We are now ready to start creating tests. Read on to learn how to create test suites without using the IDE, or skip ahead to Recording Tests and Verification Points (Section 4.3) if you prefer.
![]() | For command-line users |
|---|---|
To create a new test suite from the command line, three steps are necessary: first, create a directory for the test suite; second, create a test suite configuration file; and third, register the AUT with squishserver.
|
We are now ready to record our first test.
[1] Each AUT must be registered with the squishserver so that test scripts do not need to include the AUT's path, thus making the tests platform-independent. Another benefit of registering is that AUTs can be tested without the Squish IDE—for example, when doing regression testing.