diff --git a/src/openqlab/conversion/db.py b/src/openqlab/conversion/db.py
index 38bc50ffca9e68fe4a57d3fde58c8cd4cd53e337..b28c637553a4f7cc3dc1dcb90f180bb97b1bf5c2 100644
--- a/src/openqlab/conversion/db.py
+++ b/src/openqlab/conversion/db.py
@@ -1,4 +1,4 @@
-import numpy
+import numpy as np
 
 
 def to_lin(data):
@@ -6,11 +6,11 @@ def to_lin(data):
 
 
 def from_lin(data):
-    return 10 * numpy.log10(data)
+    return 10 * np.log10(data)
 
 
 def mean(data):
-    return from_lin(numpy.mean(to_lin(data)))
+    return from_lin(np.mean(to_lin(data)))
 
 
 def subtract(signal, noise):
@@ -19,9 +19,9 @@ def subtract(signal, noise):
 
 def average(datasets):
     lin = to_lin(datasets)
-    average = numpy.sum(lin, 0) / len(lin)
+    average = np.sum(lin, 0) / len(lin)
     return from_lin(average)
 
 
 def dBm2Vrms(dbm, R=50.0):
-    return numpy.sqrt(0.001 * R) * 10 ** (dbm / 20)
+    return np.sqrt(0.001 * R) * 10 ** (dbm / 20)
diff --git a/src/tests/test_conversion/tests_db/test_from_lin.py b/src/tests/test_conversion/tests_db/test_from_lin.py
new file mode 100644
index 0000000000000000000000000000000000000000..d0ae110e068dc93d7ed5cfcbfce0598bb21cde19
--- /dev/null
+++ b/src/tests/test_conversion/tests_db/test_from_lin.py
@@ -0,0 +1,34 @@
+import unittest
+
+import numpy as np
+import pandas as pd
+
+from openqlab.conversion.db import from_lin
+
+
+class TestFromLin(unittest.TestCase):
+    def test_positive_integer(self):
+        self.assertEqual(from_lin(10), 10)
+        self.assertEqual(from_lin(100000), 50)
+        self.assertAlmostEqual(from_lin(1.9952623), 3)
+
+    def test_negative_integer(self):
+        self.assertEqual(from_lin(0.1), -10)
+        self.assertEqual(from_lin(1e-5), -50)
+        self.assertAlmostEqual(from_lin(0.5011872336272722), -3)
+
+    def test_positive_float(self):
+        self.assertAlmostEqual(from_lin(2.23872113), 3.5)
+
+    def test_negative_float(self):
+        self.assertAlmostEqual(from_lin(0.446683592), -3.5)
+
+    def test_dataframe(self):
+        df = pd.DataFrame([10, 0.1, 1e5])
+        expected_df = pd.DataFrame([10, -10, 50], dtype="float64")
+        pd.testing.assert_frame_equal(from_lin(df), expected_df)
+
+    def test_numpy_array(self):
+        a = np.array([10, 0.1, 1e5])
+        expected_array = np.array([10, -10, 50])
+        np.testing.assert_array_equal(from_lin(a), expected_array)
diff --git a/src/tests/test_conversion/tests_db/test_to_lin.py b/src/tests/test_conversion/tests_db/test_to_lin.py
new file mode 100644
index 0000000000000000000000000000000000000000..2ec1a2ffbddc614e0b9bfd950889b2eb55bde05c
--- /dev/null
+++ b/src/tests/test_conversion/tests_db/test_to_lin.py
@@ -0,0 +1,34 @@
+import unittest
+
+import numpy as np
+import pandas as pd
+
+from openqlab.conversion.db import to_lin
+
+
+class TestToLin(unittest.TestCase):
+    def test_positive_integer(self):
+        self.assertEqual(to_lin(10), 10)
+        self.assertEqual(to_lin(50), 100000)
+        self.assertAlmostEqual(to_lin(3), 1.9952623)
+
+    def test_negative_integer(self):
+        self.assertEqual(to_lin(-10), 0.1)
+        self.assertEqual(to_lin(-50), 1e-5)
+        self.assertAlmostEqual(to_lin(-3), 0.5011872336272722)
+
+    def test_positive_float(self):
+        self.assertAlmostEqual(to_lin(3.5), 2.23872113)
+
+    def test_negative_float(self):
+        self.assertAlmostEqual(to_lin(-3.5), 0.446683592)
+
+    def test_dataframe(self):
+        df = pd.DataFrame([10, -10, 50])
+        expected_df = pd.DataFrame([10, 0.1, 1e5])
+        pd.testing.assert_frame_equal(to_lin(df), expected_df)
+
+    def test_numpy_array(self):
+        a = np.array([10, -10, 50])
+        expected_array = np.array([10, 0.1, 1e5])
+        np.testing.assert_array_equal(to_lin(a), expected_array)
diff --git a/src/tests/test_conversion/tests_db/tests_db.py b/src/tests/test_conversion/tests_db/tests_db.py
new file mode 100644
index 0000000000000000000000000000000000000000..9da198626593e19c54d6cb1bfba1b0b6c0a5aa46
--- /dev/null
+++ b/src/tests/test_conversion/tests_db/tests_db.py
@@ -0,0 +1,12 @@
+import unittest
+from pathlib import Path
+
+from openqlab.conversion.db import to_lin
+
+
+class TestGwinstek(unittest.TestCase):
+    def test_to_lin(self):
+        pass
+
+    def test_from_lin(self):
+        pass