diff --git a/function_test/BER_EncDec/Makefile b/function_test/BER_EncDec/Makefile
index e99ffcfac2c3f28abbd40bcc59641a2545d83435..8e31468d633ea424b8adb694e8e5cb2fe3834d1b 100644
--- a/function_test/BER_EncDec/Makefile
+++ b/function_test/BER_EncDec/Makefile
@@ -39,6 +39,7 @@
 TOP := ../../
 include   $(TOP)/Makefile.cfg
 
+.PHONY: run
 
 # The path of your TTCN-3 Test Executor installation:
 # Uncomment this line to override the environment variable.
@@ -117,7 +118,7 @@ USER_OBJECTS =
 # The name of the executable test suite:
 TARGET = BER_EncDec.exe
 
-ifeq ($(COVERAGE), yes)
+ifdef COVERAGE
 CPPFLAGS += -fprofile-arcs -ftest-coverage -g
 CXXFLAGS += -fprofile-arcs -ftest-coverage -g
 LDFLAGS += -fprofile-arcs -ftest-coverage -g -lgcov
@@ -152,6 +153,9 @@ compile: $(TTCN3_MODULES) $(ASN1_MODULES)
 	$(ASN1_MODULES) - $?
 	touch $@
 
+run: $(TARGET) BER_EncDec.cfg
+	./$^
+
 clean:
 	-$(RM) $(TARGET) $(OBJECTS) $(GENERATED_HEADERS) \
 	$(GENERATED_SOURCES) compile *.log *.gcda *.gcno
diff --git a/function_test/Makefile b/function_test/Makefile
index cb8f5794bce7b8375f81d6e284ea48dd85790e25..33d609dd7e63a153589fb1d867d945a427e01449 100644
--- a/function_test/Makefile
+++ b/function_test/Makefile
@@ -71,16 +71,16 @@ all check run: $(DIRS)
 .PHONY: $(DIRS)
 
 BER_EncDec:
-	cd $@; make -j; ./BER_EncDec.exe BER_EncDec.cfg
+	cd $@; make -j; make run
 
 RAW_EncDec:
-	cd $@; make -j; ./RAW_EncDec.exe RAW_EncDec.cfg
+	cd $@; make -j; make run
 
 Text_EncDec:
-	cd $@; make -j; ./Text_EncDec.exe Text_EncDec.cfg
+	cd $@; make -j; make run
 
 XER_EncDec:
-	cd $@; make -j; ./XER_EncDec.exe XER_EncDec.cfg
+	cd $@; make -j; make run
 
 Semantic_Analyser:
 	cd $@; if [ ! -f perl ] ; then ln -s `which perl` perl; fi; ./run_test_all $(SCRIPTFLAGS)
diff --git a/function_test/RAW_EncDec/Makefile b/function_test/RAW_EncDec/Makefile
index bf86e78320b9005f3ac8d13442fb6fcc5281a885..dfbe9063958e7e71ea39dcf59e3a7f9999323953 100644
--- a/function_test/RAW_EncDec/Makefile
+++ b/function_test/RAW_EncDec/Makefile
@@ -34,6 +34,7 @@
 TOP := ../../
 include   $(TOP)/Makefile.cfg
 
+.PHONY: run
 
 # The path of your TTCN-3 Test Executor installation:
 # Uncomment this line to override the environment variable.
@@ -146,6 +147,9 @@ compile: $(TTCN3_MODULES) $(ASN1_MODULES)
 	$(ASN1_MODULES) - $?
 	touch $@
 
+run: $(TARGET) RAW_EncDec.cfg
+	./$^
+
 clean:
 	-$(RM) $(TARGET) $(OBJECTS) $(GENERATED_HEADERS) \
 	$(GENERATED_SOURCES) compile *.log *.gcda *.gcno
diff --git a/function_test/Text_EncDec/Makefile b/function_test/Text_EncDec/Makefile
index 7dcc98a4887622068a39c0114db6f60419688e19..32e21cfaf5f88bac8027c467924b671622a89c3a 100644
--- a/function_test/Text_EncDec/Makefile
+++ b/function_test/Text_EncDec/Makefile
@@ -31,6 +31,8 @@
 TOP := ../../
 include   $(TOP)/Makefile.cfg
 
+.PHONY: run
+
 # The path of your TTCN-3 Test Executor installation:
 # Uncomment this line to override the environment variable.
 # TTCN3_DIR =
@@ -142,6 +144,9 @@ compile: $(TTCN3_MODULES) $(ASN1_MODULES)
 	$(ASN1_MODULES) - $?
 	touch $@
 
+run: $(TARGET) Text_EncDec.cfg
+	./$^
+
 clean:
 	-$(RM) $(TARGET) $(OBJECTS) $(GENERATED_HEADERS) \
 	$(GENERATED_SOURCES) compile *.log *.gcda *.gcno
diff --git a/function_test/XER_EncDec/Makefile b/function_test/XER_EncDec/Makefile
index 6eaaa2d980ac641f392d689ece4e2ca560bfacaf..aebe0b872c9a51707e04bdd7610d0236cc3d6211 100644
--- a/function_test/XER_EncDec/Makefile
+++ b/function_test/XER_EncDec/Makefile
@@ -30,6 +30,7 @@
 TOP := ../../
 include   $(TOP)/Makefile.cfg
 
+.PHONY: run
 
 # The path of your TTCN-3 Test Executor installation:
 # Uncomment this line to override the environment variable.
@@ -142,6 +143,9 @@ compile: $(TTCN3_MODULES) $(ASN1_MODULES)
 	$(ASN1_MODULES) - $?
 	touch $@
 
+run: $(TARGET) XER_EncDec.cfg
+	./$^
+
 clean:
 	-$(RM) $(TARGET) $(OBJECTS) $(GENERATED_HEADERS) \
 	$(GENERATED_SOURCES) compile *.log *.gcda *.gcno