diff --git a/client-py/iotdb/Session.py b/client-py/iotdb/Session.py
index 819a0dd..88af9e8 100644
--- a/client-py/iotdb/Session.py
+++ b/client-py/iotdb/Session.py
@@ -1020,6 +1020,4 @@
         """
         if status.code == Session.SUCCESS_CODE:
             return 0
-
-        logger.error("error status is", status)
         return -1
diff --git a/client-py/tests/test_dataframe.py b/client-py/tests/test_dataframe.py
index f95ade6..9a341e1 100644
--- a/client-py/tests/test_dataframe.py
+++ b/client-py/tests/test_dataframe.py
@@ -28,6 +28,7 @@
         session = Session(db.get_container_host_ip(), db.get_exposed_port(6667))
         session.open(False)
 
+        session.execute_non_query_statement("set storage group to root.device")
         # Write data
         session.insert_str_record("root.device", 123, "pressure", "15.0")
 
@@ -46,7 +47,7 @@
         db: IoTDBContainer
         session = Session(db.get_container_host_ip(), db.get_exposed_port(6667))
         session.open(False)
-
+        session.execute_non_query_statement("set storage group to root.device")
         # Write data
         session.insert_str_record("root.device", 123, "pressure", "15.0")
 
@@ -68,8 +69,7 @@
     ]
     assert_array_equal(
         df.values,
-        [
-            [
+        [[
                 "root.device.pressure",
                 None,
                 "root.device",
diff --git a/client-py/tests/test_tablet.py b/client-py/tests/test_tablet.py
index fcb5513..3ad0fdc 100644
--- a/client-py/tests/test_tablet.py
+++ b/client-py/tests/test_tablet.py
@@ -50,6 +50,7 @@
         tablet_ = Tablet(
             "root.sg_test_01.d_01", measurements_, data_types_, values_, timestamps_
         )
+        session.execute_non_query_statement("set storage group to root.sg_test_01")
         session.insert_tablet(tablet_)
         columns = []
         for measurement in measurements_:
@@ -92,6 +93,7 @@
         tablet_ = Tablet(
             "root.sg_test_01.d_01", measurements_, data_types_, values_, timestamps_
         )
+        session.execute_non_query_statement("set storage group to root.sg_test_01")
         session.insert_tablet(tablet_)
         columns = []
         for measurement in measurements_:
diff --git a/client-py/tests/test_todf.py b/client-py/tests/test_todf.py
index feedcb3..8972f29 100644
--- a/client-py/tests/test_todf.py
+++ b/client-py/tests/test_todf.py
@@ -16,10 +16,9 @@
 # under the License.
 #
 
-import random
-
 import numpy as np
 import pandas as pd
+import random
 from pandas.testing import assert_frame_equal
 
 from iotdb.IoTDBContainer import IoTDBContainer
@@ -69,6 +68,7 @@
         db: IoTDBContainer
         session = Session(db.get_container_host_ip(), db.get_exposed_port(6667))
         session.open(False)
+        session.execute_non_query_statement("set storage group to root.wt1")
 
         create_ts(session)
 
@@ -105,7 +105,7 @@
         db: IoTDBContainer
         session = Session(db.get_container_host_ip(), db.get_exposed_port(6667))
         session.open(False)
-
+        session.execute_non_query_statement("set storage group to root.wt1")
         create_ts(session)
 
         # insert data
@@ -184,6 +184,7 @@
         db: IoTDBContainer
         session = Session(db.get_container_host_ip(), db.get_exposed_port(6667))
         session.open(False)
+        session.execute_non_query_statement("set storage group to root.wt1")
 
         create_ts(session)
 
