diff --git a/test/test_sams_app.py b/test/test_sams_app.py
index 4eb28cbe4216eb461b5aba27026d9586a1fe2332..ebaa508826567b6dcc847bec10966a464a88c5d5 100644
--- a/test/test_sams_app.py
+++ b/test/test_sams_app.py
@@ -9,6 +9,7 @@ from sams_classes.exceptions import (
 from flask import Blueprint, Flask
 from .helper_classes import FlaskInThread
 import requests
+import copy
 
 def eprint(*args, **kwargs):
   print(*args, file=sys.stderr, **kwargs)
@@ -89,7 +90,8 @@ class TestSAMSApp(unittest.TestCase):
       'overwritten': 'Will overwrite default if requested'
     }
     app = SAMSApp(name = 'test', manifest = manifest
-      , langDict = {'de': default_lang, 'en': request_lang})
+      , langDict = {
+        'de': copy.deepcopy(default_lang), 'en': copy.deepcopy(request_lang)})
     self.assertEqual(app.lang('en')['overwritten'], request_lang['overwritten'])
     self.assertEqual(app.lang('en')['fallback'], default_lang['fallback'])
     self.assertEqual(app.lang('fr')['overwritten'], default_lang['overwritten'])
@@ -102,36 +104,44 @@ class TestSAMSApp(unittest.TestCase):
     manifest = {
       'default_language': 'de',
       'menu':[
-        {'url': expected_urls[0], 'name_string': name_strings[0]},
-        {'url': expected_urls[1], 'name_string': name_strings[1],
+        {'url': copy.copy(expected_urls[0]),
+         'name_string': copy.copy(name_strings[0])},
+        {'url': copy.copy(expected_urls[1]), 'name_string': copy.copy(name_strings[1]),
          'menu':[
-          {'url': expected_urls[2], 'name_string': name_strings[2]},
-          {'url': expected_urls[3], 'name_string': name_strings[3]}
+          {'url': copy.copy(expected_urls[2]),
+           'name_string': copy.copy(name_strings[2])},
+          {'url': copy.copy(expected_urls[3]),
+           'name_string': copy.copy(name_strings[3])}
         ]}
       ]
     }
-    default_lang = {
-      name_strings[0]: '1 überschrieben',
-      name_strings[1]: '2 verwendet',
-      name_strings[2]: '2.1 verwendet',
-      name_strings[3]: '2.2 überschrieben'          
-    }
-    request_lang = {
-      name_strings[0]: '1 used',
-      name_strings[3]: '2.2 used'
+    langDicts = {
+      'de': {
+        name_strings[0]: '1 überschrieben',
+        name_strings[1]: '2 verwendet',
+        name_strings[2]: '2.1 verwendet',
+        name_strings[3]: '2.2 überschrieben'          
+      },
+      'en': {
+        name_strings[0]: '1 used',
+        name_strings[3]: '2.2 used'
+      }
     }
     app = SAMSApp(name = 'test', manifest = manifest
-      , langDict = {'de': default_lang, 'en': request_lang})
+      , langDict = copy.deepcopy(langDicts))
     menu = app.menu('en')
     self.assertEqual(menu[0]['url'], expected_urls[0])
     self.assertEqual(menu[1]['url'], expected_urls[1])
     self.assertEqual(menu[1]['menu'][0]['url'], expected_urls[2])
     self.assertEqual(menu[1]['menu'][1]['url'], expected_urls[3])
-    self.assertEqual(menu[0]['name'], request_lang[name_strings[0]])
-    self.assertEqual(menu[1]['name'], default_lang[name_strings[1]])
-    self.assertEqual(menu[1]['menu'][0]['name'], default_lang[name_strings[2]])
-    self.assertEqual(menu[1]['menu'][1]['name'], request_lang[name_strings[3]])
-  
+    self.assertEqual(menu[1]['name'], langDicts['de'][name_strings[1]])
+    self.assertEqual(menu[0]['name'], langDicts['en'][name_strings[0]])
+    self.assertEqual(menu[1]['menu'][1]['name'], langDicts['en'][name_strings[3]])
+    self.assertEqual(menu[1]['menu'][0]['name'], langDicts['de'][name_strings[2]])
+    menu = app.menu('de')
+    self.assertEqual(menu[0]['name'], langDicts['de'][name_strings[0]])
+    self.assertEqual(menu[1]['menu'][1]['name'], langDicts['en'][name_strings[3]])
+
   def test_app_menu_prefix(self):
     """app.menu(lanCode, prefix) returns the app menu with prefixed urls"""
     manifest = {