diff --git a/scripts/cmake/test/AddTest.cmake b/scripts/cmake/test/AddTest.cmake
index 23661e1070b344fcee704e974f5b055d738358bd..0a4bb755c93893f9f72bb680c39a10a444792894 100644
--- a/scripts/cmake/test/AddTest.cmake
+++ b/scripts/cmake/test/AddTest.cmake
@@ -112,6 +112,9 @@ function (AddTest)
                 set(AddTest_WRAPPER_ARGS ${AddTest_WRAPPER_ARGS} --mca btl_openib_allow_ib 1)
             endif()
             set(WRAPPER_COMMAND ${MPIRUN_TOOL_PATH})
+            if("${AddTest_WRAPPER_ARGS}" MATCHES "-np;([0-9]*)")
+                set(MPI_PROCESSORS ${CMAKE_MATCH_1})
+            endif()
         else()
             message(STATUS "ERROR: mpirun was not found but is required for ${AddTest_NAME}!")
             return()
@@ -266,6 +269,9 @@ Use six arguments version of AddTest with absolute and relative tolerances")
         endif()
         set_tests_properties(${TEST_NAME} PROPERTIES ENVIRONMENT "PYTHONPATH=${PYTHONPATH}")
     endif()
+    if(DEFINED MPI_PROCESSORS)
+        set_tests_properties(${TEST_NAME} PROPERTIES PROCESSORS ${MPI_PROCESSORS})
+    endif()
 
     if(TARGET ${AddTest_EXECUTABLE})
         add_dependencies(ctest ${AddTest_EXECUTABLE})