Squish/Custom Settings for Test Runs: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 9: Line 9:
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.
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.


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


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.
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.

Revision as of 11:48, 25 February 2015

this page in:

Custom settings for test runs

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.