diff --git a/test/test_configuration/test_defaults.py b/test/test_configuration/test_defaults.py
new file mode 100644
index 0000000000000000000000000000000000000000..7dc7199f2d8ed75af2d4f968a1f52ff3ee15baec
--- /dev/null
+++ b/test/test_configuration/test_defaults.py
@@ -0,0 +1,73 @@
+from mlair.configuration.defaults import *
+
+
+class TestGetDefaults:
+
+    def test_get_defaults(self):
+        defaults = get_defaults()
+        assert isinstance(defaults, dict)
+        assert all(map(lambda k: k in defaults.keys(), ["DEFAULT_STATIONS", "DEFAULT_BATCH_SIZE", "DEFAULT_PLOT_LIST"]))
+        assert all(map(lambda x: x.startswith("DEFAULT"), defaults.keys()))
+
+
+class TestAllDefaults:
+
+    def test_training_parameters(self):
+        assert DEFAULT_CREATE_NEW_MODEL is True
+        assert DEFAULT_TRAIN_MODEL is True
+        assert DEFAULT_FRACTION_OF_TRAINING == 0.8
+        assert DEFAULT_EXTREME_VALUES is None
+        assert DEFAULT_EXTREMES_ON_RIGHT_TAIL_ONLY is False
+        assert DEFAULT_PERMUTE_DATA is False
+        assert DEFAULT_BATCH_SIZE == int(256 * 2)
+        assert DEFAULT_EPOCHS == 20
+
+    def test_data_handler_parameters(self):
+        assert DEFAULT_STATIONS == ['DEBW107', 'DEBY081', 'DEBW013', 'DEBW076', 'DEBW087']
+        assert DEFAULT_VAR_ALL_DICT == {'o3': 'dma8eu', 'relhum': 'average_values', 'temp': 'maximum',
+                                        'u': 'average_values',
+                                        'v': 'average_values', 'no': 'dma8eu', 'no2': 'dma8eu',
+                                        'cloudcover': 'average_values',
+                                        'pblheight': 'maximum'}
+        assert DEFAULT_NETWORK == "AIRBASE"
+        assert DEFAULT_STATION_TYPE == "background"
+        assert DEFAULT_VARIABLES == DEFAULT_VAR_ALL_DICT.keys()
+        assert DEFAULT_START == "1997-01-01"
+        assert DEFAULT_END == "2017-12-31"
+        assert DEFAULT_WINDOW_HISTORY_SIZE == 13
+        assert DEFAULT_OVERWRITE_LOCAL_DATA is False
+        assert isinstance(DEFAULT_TRANSFORMATION, TransformationClass)
+        assert DEFAULT_TRANSFORMATION.inputs.transform_method == "standardise"
+        assert DEFAULT_TRANSFORMATION.targets.transform_method == "standardise"
+        assert DEFAULT_TARGET_VAR == "o3"
+        assert DEFAULT_TARGET_DIM == "variables"
+        assert DEFAULT_WINDOW_LEAD_TIME == 3
+        assert DEFAULT_DIMENSIONS == {"new_index": ["datetime", "Stations"]}
+        assert DEFAULT_TIME_DIM == "datetime"
+        assert DEFAULT_INTERPOLATION_METHOD == "linear"
+        assert DEFAULT_INTERPOLATION_LIMIT == 1
+
+    def test_subset_parameters(self):
+        assert DEFAULT_TRAIN_START == "1997-01-01"
+        assert DEFAULT_TRAIN_END == "2007-12-31"
+        assert DEFAULT_TRAIN_MIN_LENGTH == 90
+        assert DEFAULT_VAL_START == "2008-01-01"
+        assert DEFAULT_VAL_END == "2009-12-31"
+        assert DEFAULT_VAL_MIN_LENGTH == 90
+        assert DEFAULT_TEST_START == "2010-01-01"
+        assert DEFAULT_TEST_END == "2017-12-31"
+        assert DEFAULT_TEST_MIN_LENGTH == 90
+        assert DEFAULT_TRAIN_VAL_MIN_LENGTH == 180
+        assert DEFAULT_USE_ALL_STATIONS_ON_ALL_DATA_SETS is True
+
+    def test_hpc_parameters(self):
+        assert DEFAULT_HPC_HOST_LIST == ["jw", "hdfmlc"]
+        assert DEFAULT_HPC_LOGIN_LIST == ["ju", "hdfmll"]
+
+    def test_postprocessing_parameters(self):
+        assert DEFAULT_EVALUATE_BOOTSTRAPS is True
+        assert DEFAULT_CREATE_NEW_BOOTSTRAPS is False
+        assert DEFAULT_NUMBER_OF_BOOTSTRAPS == 20
+        assert DEFAULT_PLOT_LIST == ["PlotMonthlySummary", "PlotStationMap", "PlotClimatologicalSkillScore",
+                                     "PlotTimeSeries", "PlotCompetitiveSkillScore", "PlotBootstrapSkillScore",
+                                     "PlotConditionalQuantiles", "PlotAvailability"]
diff --git a/test/test_statistics.py b/test/test_statistics.py
index d4a72674ae89ecd106ff1861aa6ee26567da3243..76adc1bdd210e072b4fc9be717269c6ceb951fec 100644
--- a/test/test_statistics.py
+++ b/test/test_statistics.py
@@ -3,7 +3,9 @@ import pandas as pd
 import pytest
 import xarray as xr
 
-from mlair.helpers.statistics import standardise, standardise_inverse, standardise_apply, centre, centre_inverse, centre_apply, \
+from mlair.helpers.statistics import DataClass, TransformationClass
+from mlair.helpers.statistics import standardise, standardise_inverse, standardise_apply, centre, centre_inverse, \
+    centre_apply, \
     apply_inverse_transformation
 
 lazy = pytest.lazy_fixture
@@ -113,3 +115,50 @@ class TestCentre:
         data = centre_apply(data_orig, mean)
         mean_expected = np.array([2, -5, 10]) - np.array([2, 10, 3])
         assert np.testing.assert_almost_equal(data.mean(dim), mean_expected, decimal=1) is None
+
+
+class TestDataClass:
+
+    def test_init(self):
+        dc = DataClass()
+        assert all([obj is None for obj in [dc.data, dc.mean, dc.std, dc.max, dc.min, dc.transform_method, dc._method]])
+
+    def test_init_values(self):
+        dc = DataClass(data=12, mean=2, std="test", max=23.4, min=np.array([3]), transform_method="f")
+        assert dc.data == 12
+        assert dc.mean == 2
+        assert dc.std == "test"
+        assert dc.max == 23.4
+        assert np.testing.assert_array_equal(dc.min, np.array([3])) is None
+        assert dc.transform_method == "f"
+        assert dc._method is None
+
+    def test_as_dict(self):
+        dc = DataClass(std=23)
+        dc._method = "f(x)"
+        assert dc.as_dict() == {"data": None, "mean": None, "std": 23, "max": None, "min": None,
+                                "transform_method": None}
+
+
+class TestTransformationClass:
+
+    def test_init(self):
+        tc = TransformationClass()
+        assert hasattr(tc, "inputs")
+        assert isinstance(tc.inputs, DataClass)
+        assert hasattr(tc, "targets")
+        assert isinstance(tc.targets, DataClass)
+        assert tc.inputs.mean is None
+        assert tc.targets.std is None
+
+    def test_init_values(self):
+        tc = TransformationClass(inputs_mean=1, inputs_std=2, inputs_method="f", targets_mean=3, targets_std=4,
+                                 targets_method="g")
+        assert tc.inputs.mean == 1
+        assert tc.inputs.std == 2
+        assert tc.inputs.transform_method == "f"
+        assert tc.inputs.max is None
+        assert tc.targets.mean == 3
+        assert tc.targets.std == 4
+        assert tc.targets.transform_method == "g"
+        assert tc.inputs.min is None