diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index bdfec88..2ea2505 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -37,7 +37,7 @@
             os: "ubuntu-18.04",
             build-type: "Release",
             cc: "gcc",
-            options: "-DENABLE_BUILD_TESTS=ON",
+            options: "-DENABLE_TESTS=ON",
             packager: "sudo apt-get",
             packages: "libcmocka-dev shunit2",
             snaps: "",
@@ -49,7 +49,7 @@
             os: "ubuntu-18.04",
             build-type: "Release",
             cc: "clang",
-            options: "-DENABLE_BUILD_TESTS=ON",
+            options: "-DENABLE_TESTS=ON",
             packager: "sudo apt-get",
             packages: "libcmocka-dev shunit2",
             snaps: "",
@@ -85,7 +85,7 @@
             os: "macos-10.15",
             build-type: "Release",
             cc: "clang",
-            options: "-DENABLE_BUILD_TESTS=ON",
+            options: "-DENABLE_TESTS=ON",
             packager: "brew",
             packages: "cmocka shunit2",
             snaps: "",
@@ -97,7 +97,7 @@
             os: "ubuntu-18.04",
             build-type: "Debug",
             cc: "clang",
-            options: "-DCMAKE_C_FLAGS=-fsanitize=address,undefined -DENABLE_BUILD_TESTS=ON -DENABLE_VALGRIND_TESTS=OFF",
+            options: "-DCMAKE_C_FLAGS=-fsanitize=address,undefined -DENABLE_TESTS=ON -DENABLE_VALGRIND_TESTS=OFF",
             packager: "sudo apt-get",
             packages: "libcmocka-dev",
             snaps: "",
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 044236c..5a05691 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -196,12 +196,12 @@
 #
 
 if(("${BUILD_TYPE_UPPER}" STREQUAL "DEBUG") OR ("${BUILD_TYPE_UPPER}" STREQUAL "RELWITHDEBINFO"))
-    option(ENABLE_BUILD_TESTS "Build tests" ON)
+    option(ENABLE_TESTS "Build tests" ON)
     option(ENABLE_VALGRIND_TESTS "Build tests with valgrind" ON)
     # TODO enable when the internal docs ready
     set(INTERNAL_DOCS NO)
 else()
-    option(ENABLE_BUILD_TESTS "Build tests" OFF)
+    option(ENABLE_TESTS "Build tests" OFF)
     option(ENABLE_VALGRIND_TESTS "Build tests with valgrind" OFF)
     set(INTERNAL_DOCS NO)
 endif()
@@ -225,7 +225,7 @@
 #
 if(ENABLE_STATIC)
     message(STATUS "Disabling tests for static build")
-    set(ENABLE_BUILD_TESTS OFF)
+    set(ENABLE_TESTS OFF)
     set(ENABLE_VALGRIND_TESTS OFF)
 endif()
 
@@ -235,20 +235,20 @@
         message(WARNING "valgrind executable not found! Disabling memory leaks tests.")
         set(ENABLE_VALGRIND_TESTS OFF)
     else()
-        set(ENABLE_BUILD_TESTS ON)
+        set(ENABLE_TESTS ON)
     endif()
 endif()
 
-if(ENABLE_BUILD_TESTS)
+if(ENABLE_TESTS)
     find_package(CMocka 1.0.0)
     if(NOT CMOCKA_FOUND)
         message(STATUS "Disabling tests because of missing CMocka")
-        set(ENABLE_BUILD_TESTS OFF)
+        set(ENABLE_TESTS OFF)
     endif()
-endif(ENABLE_BUILD_TESTS)
+endif(ENABLE_TESTS)
 
 if(ENABLE_COVERAGE)
-    gen_coverage_enable(${ENABLE_BUILD_TESTS})
+    gen_coverage_enable(${ENABLE_TESTS})
 endif()
 
 if ("${BUILD_TYPE_UPPER}" STREQUAL "DEBUG")
@@ -340,7 +340,7 @@
 endif()
 
 # tests
-if(ENABLE_BUILD_TESTS)
+if(ENABLE_TESTS)
     enable_testing()
     add_subdirectory(tests)
 endif()
diff --git a/CMakeModules/GenCoverage.cmake b/CMakeModules/GenCoverage.cmake
index 55be637..fe26d9e 100644
--- a/CMakeModules/GenCoverage.cmake
+++ b/CMakeModules/GenCoverage.cmake
@@ -7,7 +7,7 @@
 
     set(GEN_COVERAGE_ENABLED ON)
     if(NOT TESTS_ENABLED)
-        message(WARNING "You cannot generate coverage when tests are disabled. Enable test by additing parameter -DENABLE_BUILD_TESTS=ON or run cmake with Debug build target.")
+        message(WARNING "You cannot generate coverage when tests are disabled. Enable test by additing parameter -DENABLE_TESTS=ON or run cmake with Debug build target.")
         set(GEN_COVERAGE_ENABLED OFF)
     endif()
 
diff --git a/README.md b/README.md
index 3f1498f..7bb139a 100644
--- a/README.md
+++ b/README.md
@@ -205,7 +205,7 @@
 In case of the `Release` mode, the tests are not built by default (it requires
 additional dependency), but they can be enabled via cmake option:
 ```
-$ cmake -DENABLE_BUILD_TESTS=ON ..
+$ cmake -DENABLE_TESTS=ON ..
 ```
 
 Note that if the necessary [cmocka](https://cmocka.org/) headers are not present
diff --git a/tests/fuzz/CMakeLists.txt b/tests/fuzz/CMakeLists.txt
index 3e53cc7..66c0353 100644
--- a/tests/fuzz/CMakeLists.txt
+++ b/tests/fuzz/CMakeLists.txt
@@ -18,7 +18,7 @@
 	endif()
 endif()
 
-if (ENABLE_BUILD_TESTS)
+if (ENABLE_TESTS)
 	add_executable(fuzz_regression_test fuzz_regression_test.c)
 	set(fuzz_regression_tests lys_parse_mem lyd_parse_mem_xml lyd_parse_mem_json)
 	foreach(target_name IN LISTS fuzz_regression_tests)
diff --git a/tools/lint/CMakeLists.txt b/tools/lint/CMakeLists.txt
index f09a3b1..c64d0e7 100644
--- a/tools/lint/CMakeLists.txt
+++ b/tools/lint/CMakeLists.txt
@@ -39,7 +39,7 @@
     set_property(TEST ${TEST_NAME} APPEND PROPERTY ENVIRONMENT "YANGLINT=${PROJECT_BINARY_DIR}/yanglint")
 endfunction(add_yanglint_test)
 
-if(ENABLE_BUILD_TESTS)
+if(ENABLE_TESTS)
     # tests of non-interactive mode using shunit2
     find_program(PATH_SHUNIT NAMES shunit2)
     if(NOT PATH_SHUNIT)
