diff --git a/src/osmo_gsm_tester/core/suite.py b/src/osmo_gsm_tester/core/suite.py
index c55c5e9..9b9062d 100644
--- a/src/osmo_gsm_tester/core/suite.py
+++ b/src/osmo_gsm_tester/core/suite.py
@@ -98,7 +98,8 @@
     def load_tests(self):
         self.tests = []
         for test_basename in self.definition.test_basenames:
-            self.tests.append(test.Test(self, test_basename))
+            test_specific_config = self.config_suite_specific().get(test_basename.rstrip('.py'), {})
+            self.tests.append(test.Test(self, test_basename, test_specific_config))
 
     def mark_start(self):
         self.start_timestamp = time.time()
diff --git a/src/osmo_gsm_tester/core/test.py b/src/osmo_gsm_tester/core/test.py
index 7347229..45dfd41 100644
--- a/src/osmo_gsm_tester/core/test.py
+++ b/src/osmo_gsm_tester/core/test.py
@@ -35,11 +35,12 @@
     PASS = 'pass'
     FAIL = 'FAIL'
 
-    def __init__(self, suite_run, test_basename):
+    def __init__(self, suite_run, test_basename, test_specific_config):
         self.basename = test_basename
         super().__init__(log.C_TST, self.basename)
         self._run_dir = None
         self.suite_run = suite_run
+        self._config_test_specific = test_specific_config
         self.path = os.path.join(self.suite_run.definition.suite_dir, self.basename)
         self.status = Test.UNKNOWN
         self.start_timestamp = 0
@@ -134,6 +135,9 @@
         self.status = Test.SKIP
         self.duration = 0
 
+    def config_test_specific(self):
+        return self._config_test_specific
+
     def set_report_stdout(self, text):
         'Overwrite stdout text stored in report from inside a test'
         self._report_stdout = text
