How good is Squish's support for custom Qt classes?

Quite often, the subclassing of Qt classes is done to change the look and behavior of standard widgets. Or to store some extra internal information. Squish will recognize those classes at least up to the level it would support the underlying standard classes. So if an application's developers subclass e.g. QPushButton to create a round button or to make the button change shape if pressed, this will no pose a problem as Squish's emulation is purely concerned with user input in terms of keyboard and mouse input independent of the behavior of the underlying C++ functions that are called.

In many test scenarios test engineers are only concerned with standard visible properties, like text or color, and these work out of the box for custom QObject subclasses that inherit such properties. In addition, as of Squish 4, custom QObject subclasses' properties and slots (marked via the Q_PROPERTY and slots macros) are automatically detected. This means that their properties will show up in the Spy and their custom slots (provided the signatures use standard Qt types) are callable.

So in almost all cases Squish's automatic detection is sufficient.