Squish/Custom Settings for Test Runs

From Qt Wiki
Jump to: navigation, search

En Ar Bg De El Es Fa Fi Fr Hi Hu It Ja Kn Ko Ms Nl Pl Pt Ru Sq Th Tr Uk Zh

In certain test cases, it might be necessary to use custom settings for the application compared to other test cases. This could for example include an application that shows an introductory guide the very first time it is started, to set up some basic settings. This would only work the first time though, as the settings are stored when the test case is finished, preferrably using QSettings.

But since we can access all of the Qt API from Squish, there is an easy way around this problem! For the specific test case, simply modify the QSettings object for the application. Or more specifically, change the path to where the settings are stored to a temporary directory that you are removing at the end of the test script.

tempDir = "/tmp/test-settings"
QSettings.setPath(QSettings.NativeFormat, QSettings.UserScope, tempDir)

Keep in mind that this call will not modify existing QSettings objects in the application, so this will need to be done before any of those are created.