Or after discussing with Daniel, we could change:
 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/tests)
to
 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
in which case the tests go to the proper location, and the default working path is fine.
Then we can copy the resources to the tests/cpp folder.
Would that work for you?