REQUIRED_FILES — CMake 4.1.1 Documentation

# REQUIRED_FILES

List of files required to run the test. The filenames are relative to the test `WORKING_DIRECTORY` unless an absolute path is specified.

If set to a list of files, the test will not be run unless all of the files exist.

## Examples

Suppose that `test.txt` is created by test `baseTest` and `none.txt` does not exist:

    add_test(NAME baseTest ...)   # Assumed to create test.txt
    add_test(NAME fileTest ...)

    # The following ensures that if baseTest is successful, test.txt will
    # have been created before fileTest is run
    set_tests_properties(fileTest PROPERTIES
      DEPENDS baseTest
      REQUIRED_FILES test.txt
    )

    add_test(NAME notRunTest ...)

    # The following makes notRunTest depend on two files. Nothing creates
    # the none.txt file, so notRunTest will fail with status "Not Run".
    set_tests_properties(notRunTest PROPERTIES
      REQUIRED_FILES "test.txt;none.txt"
    )

The above example demonstrates how `REQUIRED_FILES` works, but it is not the most robust way to implement test ordering with failure detection. For that, test fixtures are a better alternative (see `FIXTURES_REQUIRED`).