diff --git a/.gitignore b/.gitignore
index 9c45ae3cdfd56c428b7dcf175a0d9dc54e65c2d7..4b7b904e3ad8760752d7c99879e8442556e372bd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@ source/f90/eelsou
 tests/workspace/eelsf90
 tests/workspace/bosonf90
 tests/workspace/eels-boson
+tests/outputFiles
diff --git a/tests/BOSIN b/tests/BOSIN
deleted file mode 100644
index 7dd33150d8532a17820bf5d6f4c024a5b5d1d5dc..0000000000000000000000000000000000000000
--- a/tests/BOSIN
+++ /dev/null
@@ -1,6 +0,0 @@
- 300.0      t
-  25.0      width
-   0.5      gauss
-   0.3      asym
--500.0      emin
-1200.0      emax
diff --git a/tests/EELSIN b/tests/EELSIN
deleted file mode 100644
index ca4cd31360e2c432f7cf1c1632eb011ca15c6901..0000000000000000000000000000000000000000
--- a/tests/EELSIN
+++ /dev/null
@@ -1,16 +0,0 @@
-   4.0      E0
-  60.0      THETA
-   1.8      PHIA
-   1.8      PHIB
-  50.0      WMIN
- 700.0      WMAX
-   2.0      DW
-WFW: MnO layer on metal
-
-    2    1                                          No-layers  NPER No-periodic
-MnO            994.00D+00                           LAYER 1  name thickness
-    4.95      1                                              epsinf No-Osc.
-   269.0          16.000        5.00000E-02                  wto, Q, lambda
-Platinum      1000.00D+00                           LAYER 2
-    8.90      1
-160000.0          -1            12.0000E-02
diff --git a/tests/bosin b/tests/bosin
deleted file mode 100644
index 7dd33150d8532a17820bf5d6f4c024a5b5d1d5dc..0000000000000000000000000000000000000000
--- a/tests/bosin
+++ /dev/null
@@ -1,6 +0,0 @@
- 300.0      t
-  25.0      width
-   0.5      gauss
-   0.3      asym
--500.0      emin
-1200.0      emax
diff --git a/tests/dotest.sh b/tests/dotest.sh
new file mode 100755
index 0000000000000000000000000000000000000000..ad42ad72a639f6edef89b126353aa18bbfe375f8
--- /dev/null
+++ b/tests/dotest.sh
@@ -0,0 +1,51 @@
+#!/bin/sh -v
+export PRECISION=1e-6
+
+cp ../source/f90/eels-boson .
+cp ../source/f90/eelsf90 .
+cp ../source/f90/bosonf90 .
+
+for number in 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 ; do
+    echo '*** File number' $number '***'
+
+    cp inputFiles/'eelsin'$number eelsin
+    ./eelsf90 >/dev/null
+    cp eelsou outputFiles/'eelsou'$number
+    numdiff -q -r $PRECISION outputFiles/'eelsou'$number reference/'eelsou'$number
+
+    cp inputFiles/bosin01 bosin
+    ./bosonf90 >/dev/null
+    mv bosou outputFiles/'bosou'$number-01
+    numdiff -q -r $PRECISION outputFiles/'bosou'$number-01 reference/'bosou'$number-01
+    ./eels-boson -c eels-bosou >/dev/null
+    mv eels-bosou outputFiles/'eels-bosou'$number-01
+    numdiff -q -r $PRECISION outputFiles/'eels-bosou'$number-01 reference/'bosou'$number-01
+
+    cp inputFiles/bosin02 bosin
+    ./bosonf90 >/dev/null
+    mv bosou outputFiles/'bosou'$number-02
+    numdiff -q -r $PRECISION outputFiles/'bosou'$number-02 reference/'bosou'$number-02
+    ./eels-boson -c eels-bosou >/dev/null
+    mv eels-bosou outputFiles/'eels-bosou'$number-02
+    numdiff -q -r $PRECISION outputFiles/'eels-bosou'$number-02 reference/'bosou'$number-02
+
+    cp inputFiles/bosin03 bosin
+    ./bosonf90 >/dev/null
+    mv bosou outputFiles/'bosou'$number-03
+    numdiff -q -r $PRECISION outputFiles/'bosou'$number-03 reference/'bosou'$number-03
+    ./eels-boson -c eels-bosou >/dev/null
+    mv eels-bosou outputFiles/'eels-bosou'$number-03
+    numdiff -q -r $PRECISION outputFiles/'eels-bosou'$number-03 reference/'bosou'$number-03
+
+    cp inputFiles/bosin04 bosin
+    ./bosonf90 >/dev/null
+    mv bosou outputFiles/'bosou'$number-04
+    numdiff -q -r $PRECISION outputFiles/'bosou'$number-04 reference/'bosou'$number-04
+    ./eels-boson -c eels-bosou >/dev/null
+    mv eels-bosou outputFiles/'eels-bosou'$number-04
+    numdiff -q -r $PRECISION outputFiles/'eels-bosou'$number-04 reference/'bosou'$number-04
+
+    rm -f eelsin bosin eelsou
+done
+
+rm -f eels-boson eelsf90 bosonf90
diff --git a/tests/eelsin b/tests/eelsin
deleted file mode 100644
index ca4cd31360e2c432f7cf1c1632eb011ca15c6901..0000000000000000000000000000000000000000
--- a/tests/eelsin
+++ /dev/null
@@ -1,16 +0,0 @@
-   4.0      E0
-  60.0      THETA
-   1.8      PHIA
-   1.8      PHIB
-  50.0      WMIN
- 700.0      WMAX
-   2.0      DW
-WFW: MnO layer on metal
-
-    2    1                                          No-layers  NPER No-periodic
-MnO            994.00D+00                           LAYER 1  name thickness
-    4.95      1                                              epsinf No-Osc.
-   269.0          16.000        5.00000E-02                  wto, Q, lambda
-Platinum      1000.00D+00                           LAYER 2
-    8.90      1
-160000.0          -1            12.0000E-02