diff --git a/plugins/autotest/testcodeparser.cpp b/plugins/autotest/testcodeparser.cpp
index 8c0b7b43d7b33a2594c7333d0ffbef5861a61bb1..004f733fbda72156296f23570a3bc73d06a0206f 100644
--- a/plugins/autotest/testcodeparser.cpp
+++ b/plugins/autotest/testcodeparser.cpp
@@ -547,7 +547,10 @@ void TestCodeParser::onProjectPartsUpdated(ProjectExplorer::Project *project)
 {
     if (project != currentProject())
         return;
-    updateTestTree();
+    if (!m_parserEnabled || m_parserState == Disabled)
+        m_fullUpdatePostponed = true;
+    else
+        emitUpdateTestTree();
 }
 
 void TestCodeParser::removeFiles(const QStringList &files)