Effective Testing of Qt Applications with froglogic Squish

This course will introduce you to Squish, a testing tool for Qt and Java applications. In this course, we will demonstrate Squish on various Qt applications, using Python as the chosen scripting language.

Day 1 requires no development experience - we will be running Squish on example applications that were already built as part of either Squish or Qt, and we will teach you all you need to know of Python in order to make use of the features of Squish.

Course Outline

Features of Squish

  • How it is different from other testing tools
  • How it works
  • Installation Tips
  • Lab: Record, playback, breakpoints, inspection

Graphical Tools: IDE, Spy, Wrapper Explorer

Verification Points

  • Lab: Verification Points

Optional: Introduction to Python

Data-Driven Tests

  • Lab: Data-Driven Testing

Testing ItemViews

Testing GraphicsView

  • Lab: Testing GraphicsView

Testing QML Applications

  • QML Extensions
  • Lab: Testing QML Applications

Keyword-Driven Tests

  • Lab: Keyword-Driven Tests

Random Stress Tests

Batch-Driven Testing

Remote Testing - Distributed Architectures


Customizing Object Name Generation

  • Lab: Customizing Object Name Generation

Extending Squish with Wrapper Libraries

  • Lab: Wrapping Libraries

Typically, on Day 3, we create tests for the customer’s AUT (application under test).


Students are required to bring their own laptop. You can use the OS of your choice (Linux, Mac, or Windows). If you are using Windows, we recommend using the commercial editions of Qt and Microsoft Visual C++. If you are using either of the other platforms, you can use the open source editions of Qt and gcc.

Required software:

  • Python 2.7
  • Your Favorite Python Editor (whatever it may be)
  • gcc (linux), xcode w/ command line tools (mac) or MS Dev Studio (windows - Express Editon works too) 
  • Qt 4.7 or later for the same os/compiler
  • Squish 5.x or later (evaluation copies can be arranged)

Please install the required software on your laptop before day 1 of the course.