diff --git a/warden_server/test_warden_server.py b/warden_server/test_warden_server.py
index c569230ae9e1a4953b37d6fbdfb7613a579af801..d690a8896f401f467f8d63f7f65ea3f69b1639e4 100755
--- a/warden_server/test_warden_server.py
+++ b/warden_server/test_warden_server.py
@@ -8,11 +8,15 @@ import sys
 import warnings
 from os import path
 from copy import deepcopy
-import unittest2 as unittest
 import MySQLdb as my
 from warden_server import build_server
 import warden_server
 
+if sys.version_info >= (3, 10):
+    import unittest
+else:
+    import unittest2 as unittest
+
 if sys.version_info[0] >= 3:
     from io import StringIO
 else:
@@ -408,8 +412,9 @@ def init_user():
     conn = None
     try:
         conn = my.connect(user='root', passwd=getpass.getpass('Enter MySQL Root password:'))
-        with conn as cur:   # Not a canonical connector implementation, for sure
-            cur.execute("GRANT SELECT, INSERT, UPDATE, CREATE, DELETE, DROP ON *.* TO %s@'localhost' IDENTIFIED BY %s", (USER, PASSWORD))
+        with conn.cursor() as cur:
+            cur.execute("CREATE USER IF NOT EXISTS %s@'localhost' IDENTIFIED BY %s", (USER, PASSWORD))
+            cur.execute("GRANT SELECT, INSERT, UPDATE, CREATE, DELETE, DROP ON *.* TO %s@'localhost'", (USER,))
         conn.commit()
         print("DB User set up successfuly")
     except my.OperationalError as ex: