diff --git a/osm_common/tests/packages/invalid_package_vnf/Scripts/charms/simple/src/charm.py b/osm_common/tests/packages/invalid_package_vnf/Scripts/charms/simple/src/charm.py
index 54cefc4..8607b1f 100755
--- a/osm_common/tests/packages/invalid_package_vnf/Scripts/charms/simple/src/charm.py
+++ b/osm_common/tests/packages/invalid_package_vnf/Scripts/charms/simple/src/charm.py
@@ -16,8 +16,8 @@
 # under the License.
 ##
 
-import sys
 import subprocess
+import sys
 
 from ops.charm import CharmBase
 from ops.main import main
diff --git a/osm_common/tests/packages/native_charm_with_metadata_dir_vnf/Scripts/charms/simple/src/charm.py b/osm_common/tests/packages/native_charm_with_metadata_dir_vnf/Scripts/charms/simple/src/charm.py
index 54cefc4..8607b1f 100755
--- a/osm_common/tests/packages/native_charm_with_metadata_dir_vnf/Scripts/charms/simple/src/charm.py
+++ b/osm_common/tests/packages/native_charm_with_metadata_dir_vnf/Scripts/charms/simple/src/charm.py
@@ -16,8 +16,8 @@
 # under the License.
 ##
 
-import sys
 import subprocess
+import sys
 
 from ops.charm import CharmBase
 from ops.main import main
diff --git a/osm_common/tests/packages/native_charm_without_metadata_dir_vnf/Scripts/charms/simple/src/charm.py b/osm_common/tests/packages/native_charm_without_metadata_dir_vnf/Scripts/charms/simple/src/charm.py
index 54cefc4..8607b1f 100755
--- a/osm_common/tests/packages/native_charm_without_metadata_dir_vnf/Scripts/charms/simple/src/charm.py
+++ b/osm_common/tests/packages/native_charm_without_metadata_dir_vnf/Scripts/charms/simple/src/charm.py
@@ -16,8 +16,8 @@
 # under the License.
 ##
 
-import sys
 import subprocess
+import sys
 
 from ops.charm import CharmBase
 from ops.main import main
diff --git a/osm_common/tests/test_dbbase.py b/osm_common/tests/test_dbbase.py
index 117350e..eabf5e0 100644
--- a/osm_common/tests/test_dbbase.py
+++ b/osm_common/tests/test_dbbase.py
@@ -18,11 +18,12 @@
 ##
 
 import http
-import pytest
-import unittest
-from osm_common.dbbase import DbBase, DbException, deep_update
-from os import urandom
 from http import HTTPStatus
+from os import urandom
+import unittest
+
+from osm_common.dbbase import DbBase, DbException, deep_update
+import pytest
 
 
 def exception_message(message):
@@ -124,10 +125,6 @@
         TEST = (
             ("plain text 1 ! ", None),
             ("plain text 2 with salt ! ", "1afd5d1a-4a7e-4d9c-8c65-251290183106"),
-            ("plain text 3 with usalt ! ", u"1afd5d1a-4a7e-4d9c-8c65-251290183106"),
-            (u"plain unicode 4 ! ", None),
-            (u"plain unicode 5 with salt ! ", "1a000d1a-4a7e-4d9c-8c65-251290183106"),
-            (u"plain unicode 6 with usalt ! ", u"1abcdd1a-4a7e-4d9c-8c65-251290183106"),
         )
         for db_base in self.db_bases:
             for value, salt in TEST:
diff --git a/osm_common/tests/test_dbmemory.py b/osm_common/tests/test_dbmemory.py
index 3c45527..9a0e749 100644
--- a/osm_common/tests/test_dbmemory.py
+++ b/osm_common/tests/test_dbmemory.py
@@ -16,17 +16,15 @@
 # For those usages not covered by the Apache License, Version 2.0 please
 # contact: esousa@whitestack.com or alfonso.tiernosepulveda@telefonica.com
 ##
-
+from copy import deepcopy
 import http
 import logging
-import pytest
 import unittest
-from unittest.mock import Mock
+from unittest.mock import MagicMock, Mock
 
-from unittest.mock import MagicMock
 from osm_common.dbbase import DbException
 from osm_common.dbmemory import DbMemory
-from copy import deepcopy
+import pytest
 
 __author__ = "Eduardo Sousa <eduardosousa@av.it.pt>"
 
diff --git a/osm_common/tests/test_fsbase.py b/osm_common/tests/test_fsbase.py
index 43349ad..cb5c560 100644
--- a/osm_common/tests/test_fsbase.py
+++ b/osm_common/tests/test_fsbase.py
@@ -18,9 +18,9 @@
 ##
 
 import http
-import pytest
 
 from osm_common.fsbase import FsBase, FsException
+import pytest
 
 
 def exception_message(message):
diff --git a/osm_common/tests/test_fslocal.py b/osm_common/tests/test_fslocal.py
index 6f52984..6336211 100644
--- a/osm_common/tests/test_fslocal.py
+++ b/osm_common/tests/test_fslocal.py
@@ -17,18 +17,18 @@
 # contact: esousa@whitestack.com or alfonso.tiernosepulveda@telefonica.com
 ##
 
+import http
 import io
 import logging
-import http
 import os
-import pytest
+import shutil
 import tarfile
 import tempfile
 import uuid
-import shutil
 
 from osm_common.fsbase import FsException
 from osm_common.fslocal import FsLocal
+import pytest
 
 __author__ = "Eduardo Sousa <eduardosousa@av.it.pt>"
 
diff --git a/osm_common/tests/test_fsmongo.py b/osm_common/tests/test_fsmongo.py
index da01ff3..01a8ef2 100644
--- a/osm_common/tests/test_fsmongo.py
+++ b/osm_common/tests/test_fsmongo.py
@@ -16,23 +16,20 @@
 # contact: eduardo.sousa@canonical.com
 ##
 
-import logging
-import pytest
-import tempfile
-import tarfile
-import os
-import subprocess
-
-from pymongo import MongoClient
-from gridfs import GridFSBucket
-
 from io import BytesIO
-
+import logging
+import os
+from pathlib import Path
+import subprocess
+import tarfile
+import tempfile
 from unittest.mock import Mock
 
+from gridfs import GridFSBucket
 from osm_common.fsbase import FsException
 from osm_common.fsmongo import FsMongo
-from pathlib import Path
+from pymongo import MongoClient
+import pytest
 
 __author__ = "Eduardo Sousa <eduardo.sousa@canonical.com>"
 
diff --git a/osm_common/tests/test_msgbase.py b/osm_common/tests/test_msgbase.py
index 665968e..d5092b1 100644
--- a/osm_common/tests/test_msgbase.py
+++ b/osm_common/tests/test_msgbase.py
@@ -18,9 +18,9 @@
 ##
 
 import http
-import pytest
 
 from osm_common.msgbase import MsgBase, MsgException
+import pytest
 
 
 def exception_message(message):
diff --git a/osm_common/tests/test_msglocal.py b/osm_common/tests/test_msglocal.py
index 9548885..fb74586 100644
--- a/osm_common/tests/test_msglocal.py
+++ b/osm_common/tests/test_msglocal.py
@@ -19,18 +19,18 @@
 
 import http
 import logging
-import pytest
-import tempfile
-import shutil
-import uuid
 import os
-import yaml
-import time
+import shutil
+import tempfile
 import threading
-
+import time
 from unittest.mock import MagicMock
+import uuid
+
 from osm_common.msgbase import MsgException
 from osm_common.msglocal import MsgLocal
+import pytest
+import yaml
 
 __author__ = "Eduardo Sousa <eduardosousa@av.it.pt>"
 
