diff --git a/funcons-simple.cabal b/funcons-simple.cabal
--- a/funcons-simple.cabal
+++ b/funcons-simple.cabal
@@ -2,7 +2,7 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                funcons-simple
-version:             0.1.0.5
+version:             0.1.0.7
 synopsis:            A modular interpreter for executing SIMPLE funcons 
 description:         
     The PLanCompS (<http://plancomps.org>) project has developed a component-based approach to formal semantics.
@@ -36,12 +36,16 @@
                       tests/SIMPLE.config
                       tests/SIMPLE-interactive.config
                       tests/README.txt
+                      tests/run-tests.sh
+                      tests/run-K-tests-exceptions.sh
+                      tests/run-K-tests.sh
+                      tests/run-K-tests-refocused.sh
 cabal-version:       >=1.10
 
 executable runfct-SIMPLE 
   main-is:             Main.hs
   other-modules:       Funcons.SIMPLE.SIMPLE4Declarations.SIMPLE4Declarations, Funcons.SIMPLE.Library 
   -- other-extensions:    
-  build-depends:       base >=4.8 && <=5, funcons-tools >= 0.2.0.7, funcons-values >= 0.1.0.5
+  build-depends:       base >=4.8 && <=5, funcons-tools >= 0.2.0.8, funcons-values >= 0.1.0.6
   hs-source-dirs:      src
   default-language:    Haskell2010
diff --git a/tests/run-K-tests-exceptions.sh b/tests/run-K-tests-exceptions.sh
new file mode 100644
--- /dev/null
+++ b/tests/run-K-tests-exceptions.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+runfct=$1
+refocus="--refocus $2"
+function run-test-set {
+  testName=$1
+  testDir="$testName"
+  fileext="smp"
+
+  for i in $(seq -w $2 $3)
+  do
+
+    echo -e "$testName Test $i:"
+    echo "=== Program ===" > ${testDir}/${testName}$i.output
+    cat ${testDir}/${testName}$i.$fileext >> ${testDir}/${testName}$i.output
+    echo "=== Output ===" >> ${testDir}/${testName}$i.output
+    ${runfct} ${testDir}/${testName}$i.fct $refocus >> ${testDir}/${testName}$i.output
+
+  done
+}
+
+run-test-set "Kexceptions" 1 15
diff --git a/tests/run-K-tests-refocused.sh b/tests/run-K-tests-refocused.sh
new file mode 100644
--- /dev/null
+++ b/tests/run-K-tests-refocused.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+runfct="$1"
+function run-test-set {
+  testName=$1
+  testDir="$testName"
+  fileext="smp"
+
+  for i in $(seq -w $2 $3)
+  do
+
+    echo -e "$testName Test $i:"
+    echo "=== Program ===" > ${testDir}/${testName}$i.output
+    cat ${testDir}/${testName}$i.$fileext >> ${testDir}/${testName}$i.output
+    echo "=== Output ===" >> ${testDir}/${testName}$i.output
+    time ${runfct} ${testDir}/${testName}$i.fct --refocus true >> ${testDir}/${testName}$i.output
+
+  done
+}
+
+run-test-set "Kdiverse" 1 6
diff --git a/tests/run-K-tests.sh b/tests/run-K-tests.sh
new file mode 100644
--- /dev/null
+++ b/tests/run-K-tests.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+runfct=$1
+function run-test-set {
+  testName=$1
+  testDir="$testName"
+  fileext="smp"
+
+  for i in $(seq -w $2 $3)
+  do
+
+    echo -e "$testName Test $i:"
+    echo "=== Program ===" > ${testDir}/${testName}$i.output
+    cat ${testDir}/${testName}$i.$fileext >> ${testDir}/${testName}$i.output
+    echo "=== Output ===" >> ${testDir}/${testName}$i.output
+    time ${runfct} ${testDir}/${testName}$i.fct --refocus false >> ${testDir}/${testName}$i.output
+
+  done
+}
+
+run-test-set "Kdiverse" 1 3
diff --git a/tests/run-tests.sh b/tests/run-tests.sh
new file mode 100644
--- /dev/null
+++ b/tests/run-tests.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+runfct=$1
+command_opts="--refocus $2"
+function run-test-set {
+  testName=$1
+  testDir="$testName"
+  fileext="smp"
+
+  for i in $(seq -w $2 $3)
+  do
+
+    echo -e "$testName Test $i:"
+    echo "=== Program ===" > ${testDir}/${testName}$i.output
+    cat ${testDir}/${testName}$i.$fileext >> ${testDir}/${testName}$i.output
+    echo "=== Output ===" >> ${testDir}/${testName}$i.output
+    ${runfct} ${testDir}/${testName}$i.fct $command_opts >> ${testDir}/${testName}$i.output
+
+  done
+}
+
+run-test-set "Basic" 1 26
+run-test-set "Advanced" 1 5
+run-test-set "Kexceptions" 1 15
+run-test-set "Kdiverse" 1 6
