FindSquish¶
– Typical Use
This module can be used to find Squish. Currently Squish versions 3 and 4 are supported.
SQUISH_FOUND If false, don't try to use Squish
SQUISH_VERSION The full version of Squish found
SQUISH_VERSION_MAJOR The major version of Squish found
SQUISH_VERSION_MINOR The minor version of Squish found
SQUISH_VERSION_PATCH The patch version of Squish found
SQUISH_INSTALL_DIR The Squish installation directory (containing bin, lib, etc)
SQUISH_SERVER_EXECUTABLE The squishserver executable
SQUISH_CLIENT_EXECUTABLE The squishrunner executable
SQUISH_INSTALL_DIR_FOUND Was the install directory found?
SQUISH_SERVER_EXECUTABLE_FOUND Was the server executable found?
SQUISH_CLIENT_EXECUTABLE_FOUND Was the client executable found?
It provides the function squish_v4_add_test() for adding a squish test to cmake using Squish 4.x:
squish_v4_add_test(cmakeTestName AUT targetName SUITE suiteName TEST squishTestName
[SETTINGSGROUP group] [PRE_COMMAND command] [POST_COMMAND command] )
The arguments have the following meaning:
cmakeTestName: this will be used as the first argument for add_test()
AUT targetName: the name of the cmake target which will be used as AUT, i.e. the
executable which will be tested.
SUITE suiteName: this is either the full path to the squish suite, or just the
last directory of the suite, i.e. the suite name. In this case
the CMakeLists.txt which calls squish_add_test() must be located
in the parent directory of the suite directory.
TEST squishTestName: the name of the squish test, i.e. the name of the subdirectory
of the test inside the suite directory.
SETTINGSGROUP group: if specified, the given settings group will be used for executing the test.
If not specified, the groupname will be "CTest_<username>"
PRE_COMMAND command: if specified, the given command will be executed before starting the squish test.
POST_COMMAND command: same as PRE_COMMAND, but after the squish test has been executed.
enable_testing()
find_package(Squish 4.0)
if (SQUISH_FOUND)
squish_v4_add_test(myTestName AUT myApp SUITE ${CMAKE_SOURCE_DIR}/tests/mySuite TEST someSquishTest SETTINGSGROUP myGroup )
endif ()
For users of Squish version 3.x the macro squish_v3_add_test() is provided:
squish_v3_add_test(testName applicationUnderTest testCase envVars testWrapper)
Use this macro to add a test using Squish 3.x.
enable_testing()
find_package(Squish)
if (SQUISH_FOUND)
squish_v3_add_test(myTestName myApplication testCase envVars testWrapper)
endif ()
macro SQUISH_ADD_TEST(testName applicationUnderTest testCase envVars testWrapper)
This is deprecated. Use SQUISH_V3_ADD_TEST() if you are using Squish 3.x instead.