This is an automated email from the ASF dual-hosted git repository.

jackietien pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/master by this push:
     new 3904afce17 [IOTDB-4822]Migrate Query tests to the new IT framework
3904afce17 is described below

commit 3904afce17905581f65b11a45386d77a3bdacebb
Author: Weihao Li <[email protected]>
AuthorDate: Tue Nov 1 17:31:06 2022 +0800

    [IOTDB-4822]Migrate Query tests to the new IT framework
---
 .../iotdb/db/it/query}/IoTDBArithmeticIT.java      | 151 ++---
 .../iotdb/db/it/query}/IoTDBFuzzyQueryIT.java      | 159 +++---
 .../org/apache/iotdb/db/it/query}/IoTDBInIT.java   |  39 +-
 .../iotdb/db/it/query}/IoTDBQueryDemoIT.java       | 627 ++++++++++-----------
 .../it/query}/IoTDBSelectCompareExpressionIT.java  |  13 +-
 .../iotdb/db/it/query}/IoTDBSelectSchemaIT.java    |  13 +-
 6 files changed, 451 insertions(+), 551 deletions(-)

diff --git 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBArithmeticIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBArithmeticIT.java
similarity index 60%
rename from 
integration/src/test/java/org/apache/iotdb/db/integration/IoTDBArithmeticIT.java
rename to 
integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBArithmeticIT.java
index f82d9ccb47..f3dd814931 100644
--- 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBArithmeticIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBArithmeticIT.java
@@ -17,42 +17,48 @@
  * under the License.
  */
 
-package org.apache.iotdb.db.integration;
+package org.apache.iotdb.db.it.query;
 
-import org.apache.iotdb.commons.exception.MetadataException;
-import org.apache.iotdb.commons.path.PartialPath;
-import org.apache.iotdb.db.service.IoTDB;
-import org.apache.iotdb.db.utils.EnvironmentUtils;
-import org.apache.iotdb.itbase.category.LocalStandaloneTest;
-import org.apache.iotdb.jdbc.Config;
-import org.apache.iotdb.tsfile.file.metadata.enums.CompressionType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSDataType;
-import org.apache.iotdb.tsfile.file.metadata.enums.TSEncoding;
+import org.apache.iotdb.it.env.EnvFactory;
+import org.apache.iotdb.it.framework.IoTDBTestRunner;
+import org.apache.iotdb.itbase.category.ClusterIT;
+import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
 
 import java.sql.Connection;
-import java.sql.DriverManager;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.util.ArrayList;
 import java.util.List;
 
+import static org.apache.iotdb.db.it.utils.TestUtils.prepareData;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
-@Category({LocalStandaloneTest.class})
+@RunWith(IoTDBTestRunner.class)
+@Category({LocalStandaloneIT.class, ClusterIT.class})
 public class IoTDBArithmeticIT {
 
   private static final double E = 0.0001;
 
   private static final String[] INSERTION_SQLS = {
+    "SET STORAGE GROUP TO root.test",
+    "CREATE TIMESERIES root.sg.d1.s1 WITH DATATYPE=INT32, ENCODING=PLAIN",
+    "CREATE TIMESERIES root.sg.d1.s2 WITH DATATYPE=INT64, ENCODING=PLAIN",
+    "CREATE TIMESERIES root.sg.d1.s3 WITH DATATYPE=FLOAT, ENCODING=PLAIN",
+    "CREATE TIMESERIES root.sg.d1.s4 WITH DATATYPE=DOUBLE, ENCODING=PLAIN",
+    "CREATE TIMESERIES root.sg.d1.s5 WITH DATATYPE=BOOLEAN, ENCODING=PLAIN",
+    "CREATE TIMESERIES root.sg.d1.s6 WITH DATATYPE=TEXT, ENCODING=PLAIN",
+    "CREATE TIMESERIES root.sg.d1.s7 WITH DATATYPE=INT32, ENCODING=PLAIN",
+    "CREATE TIMESERIES root.sg.d1.s8 WITH DATATYPE=INT32, ENCODING=PLAIN",
     "insert into root.sg.d1(time, s1, s2, s3, s4, s5, s6, s7) values (1, 1, 1, 
1, 1, false, '1', 1)",
     "insert into root.sg.d1(time, s1, s2, s3, s4, s5, s6, s8) values (2, 2, 2, 
2, 2, false, '2', 2)",
     "insert into root.sg.d1(time, s1, s2, s3, s4, s5, s6, s7) values (3, 3, 3, 
3, 3, true, '3', 3)",
@@ -62,87 +68,18 @@ public class IoTDBArithmeticIT {
 
   @BeforeClass
   public static void setUp() throws Exception {
-    EnvironmentUtils.envSetUp();
-    Class.forName(Config.JDBC_DRIVER_NAME);
-    createTimeSeries();
-    generateData();
-  }
-
-  private static void createTimeSeries() throws MetadataException {
-    IoTDB.schemaProcessor.setStorageGroup(new PartialPath("root.sg"));
-    IoTDB.schemaProcessor.createTimeseries(
-        new PartialPath("root.sg.d1.s1"),
-        TSDataType.INT32,
-        TSEncoding.PLAIN,
-        CompressionType.UNCOMPRESSED,
-        null);
-    IoTDB.schemaProcessor.createTimeseries(
-        new PartialPath("root.sg.d1.s2"),
-        TSDataType.INT64,
-        TSEncoding.PLAIN,
-        CompressionType.UNCOMPRESSED,
-        null);
-    IoTDB.schemaProcessor.createTimeseries(
-        new PartialPath("root.sg.d1.s3"),
-        TSDataType.FLOAT,
-        TSEncoding.PLAIN,
-        CompressionType.UNCOMPRESSED,
-        null);
-    IoTDB.schemaProcessor.createTimeseries(
-        new PartialPath("root.sg.d1.s4"),
-        TSDataType.DOUBLE,
-        TSEncoding.PLAIN,
-        CompressionType.UNCOMPRESSED,
-        null);
-    IoTDB.schemaProcessor.createTimeseries(
-        new PartialPath("root.sg.d1.s5"),
-        TSDataType.BOOLEAN,
-        TSEncoding.PLAIN,
-        CompressionType.UNCOMPRESSED,
-        null);
-    IoTDB.schemaProcessor.createTimeseries(
-        new PartialPath("root.sg.d1.s6"),
-        TSDataType.TEXT,
-        TSEncoding.PLAIN,
-        CompressionType.UNCOMPRESSED,
-        null);
-    IoTDB.schemaProcessor.createTimeseries(
-        new PartialPath("root.sg.d1.s7"),
-        TSDataType.INT32,
-        TSEncoding.PLAIN,
-        CompressionType.UNCOMPRESSED,
-        null);
-    IoTDB.schemaProcessor.createTimeseries(
-        new PartialPath("root.sg.d1.s8"),
-        TSDataType.INT32,
-        TSEncoding.PLAIN,
-        CompressionType.UNCOMPRESSED,
-        null);
-  }
-
-  private static void generateData() {
-    try (Connection connection =
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
-        Statement statement = connection.createStatement()) {
-      for (String dataGenerationSql : INSERTION_SQLS) {
-        statement.execute(dataGenerationSql);
-      }
-    } catch (SQLException throwable) {
-      fail(throwable.getMessage());
-    }
+    EnvFactory.getEnv().initBeforeClass();
+    prepareData(INSERTION_SQLS);
   }
 
   @AfterClass
   public static void tearDown() throws Exception {
-    EnvironmentUtils.cleanEnv();
+    EnvFactory.getEnv().cleanAfterClass();
   }
 
   @Test
   public void testArithmeticBinary() {
-    try (Connection connection =
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+    try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
 
       String[] operands = new String[] {"s1", "s2", "s3", "s4"};
@@ -159,7 +96,7 @@ public class IoTDBArithmeticIT {
 
         assertEquals(1 + expressions.size(), 
resultSet.getMetaData().getColumnCount());
 
-        for (int i = 1; i < INSERTION_SQLS.length + 1; ++i) {
+        for (int i = 1; i < 6; ++i) {
           resultSet.next();
           for (int j = 0; j < expressions.size(); ++j) {
             double expected = 0;
@@ -192,9 +129,7 @@ public class IoTDBArithmeticIT {
 
   @Test
   public void testArithmeticUnary() {
-    try (Connection connection =
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+    try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
       String[] expressions = new String[] {"- s1", "- s2", "- s3", "- s4"};
       String sql = String.format("select %s from root.sg.d1", String.join(",", 
expressions));
@@ -202,7 +137,7 @@ public class IoTDBArithmeticIT {
 
       assertEquals(1 + expressions.length, 
resultSet.getMetaData().getColumnCount());
 
-      for (int i = 1; i < INSERTION_SQLS.length + 1; ++i) {
+      for (int i = 1; i < 6; ++i) {
         resultSet.next();
         for (int j = 0; j < expressions.length; ++j) {
           double expected = -i;
@@ -218,9 +153,7 @@ public class IoTDBArithmeticIT {
 
   @Test
   public void testHybridQuery() {
-    try (Connection connection =
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+    try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
       String[] expressions = new String[] {"s1", "s1 + s2", "sin(s1)"};
       String sql = String.format("select %s from root.sg.d1", String.join(",", 
expressions));
@@ -228,7 +161,7 @@ public class IoTDBArithmeticIT {
 
       assertEquals(1 + expressions.length, 
resultSet.getMetaData().getColumnCount());
 
-      for (int i = 1; i < INSERTION_SQLS.length + 1; ++i) {
+      for (int i = 1; i < 6; ++i) {
         resultSet.next();
         assertEquals(i, Double.parseDouble(resultSet.getString(2)), E);
         assertEquals(i + i, Double.parseDouble(resultSet.getString(3)), E);
@@ -242,19 +175,29 @@ public class IoTDBArithmeticIT {
 
   @Test
   public void testNonAlign() {
-    try (Connection connection =
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+    try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
       ResultSet resultSet = statement.executeQuery("select s7 + s8 from 
root.sg.d1");
       assertEquals(1 + 1, resultSet.getMetaData().getColumnCount());
       assertTrue(resultSet.next());
+      String curr = null;
+      while (curr == null) {
+        curr = resultSet.getString(2);
+        resultSet.next();
+      }
       assertEquals(10, Double.parseDouble(resultSet.getString(2)), E);
       assertFalse(resultSet.next());
 
       resultSet = statement.executeQuery("select s7 + s8 from root.sg.d1 where 
time < 5");
       assertEquals(1 + 1, resultSet.getMetaData().getColumnCount());
-      assertFalse(resultSet.next());
+      curr = null;
+      while (curr == null) {
+        if (!resultSet.next()) {
+          break;
+        }
+        curr = resultSet.getString(2);
+      }
+      assertEquals(null, curr);
       resultSet.close();
     } catch (SQLException throwable) {
       fail(throwable.getMessage());
@@ -263,25 +206,21 @@ public class IoTDBArithmeticIT {
 
   @Test
   public void testWrongTypeBoolean() {
-    try (Connection connection =
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+    try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
       statement.executeQuery("select s1 + s5 from root.sg.d1");
     } catch (Exception throwable) {
-      assertTrue(throwable.getMessage().contains("Unsupported dataType: 
BOOLEAN"));
+      assertTrue(throwable.getMessage().contains("Invalid input expression 
data type."));
     }
   }
 
   @Test
   public void testWrongTypeText() {
-    try (Connection connection =
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+    try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
       statement.executeQuery("select s1 + s6 from root.sg.d1");
     } catch (SQLException throwable) {
-      assertTrue(throwable.getMessage().contains("Unsupported dataType: 
TEXT"));
+      assertTrue(throwable.getMessage().contains("Invalid input expression 
data type."));
     }
   }
 }
diff --git 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBFuzzyQueryIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBFuzzyQueryIT.java
similarity index 66%
rename from 
integration/src/test/java/org/apache/iotdb/db/integration/IoTDBFuzzyQueryIT.java
rename to 
integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBFuzzyQueryIT.java
index 8c61c4b89d..34007401dd 100644
--- 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBFuzzyQueryIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBFuzzyQueryIT.java
@@ -17,20 +17,21 @@
  * under the License.
  */
 
-package org.apache.iotdb.db.integration;
+package org.apache.iotdb.db.it.query;
 
-import org.apache.iotdb.db.utils.EnvironmentUtils;
-import org.apache.iotdb.itbase.category.LocalStandaloneTest;
-import org.apache.iotdb.jdbc.Config;
+import org.apache.iotdb.it.env.EnvFactory;
+import org.apache.iotdb.it.framework.IoTDBTestRunner;
+import org.apache.iotdb.itbase.category.ClusterIT;
+import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
 
 import java.sql.Connection;
-import java.sql.DriverManager;
 import java.sql.ResultSet;
 import java.sql.ResultSetMetaData;
 import java.sql.SQLException;
@@ -40,36 +41,24 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
-import java.util.Objects;
 
 import static org.junit.Assert.fail;
 
-@Category({LocalStandaloneTest.class})
+@RunWith(IoTDBTestRunner.class)
+@Category({LocalStandaloneIT.class, ClusterIT.class})
 public class IoTDBFuzzyQueryIT {
   private static List<String> sqls = new ArrayList<>();
-  private static Connection connection;
 
   @BeforeClass
   public static void setUp() throws Exception {
+    EnvFactory.getEnv().initBeforeClass();
     initCreateSQLStatement();
-    EnvironmentUtils.envSetUp();
     insertData();
   }
 
   @AfterClass
   public static void tearDown() throws Exception {
-    close();
-    EnvironmentUtils.cleanEnv();
-  }
-
-  private static void close() {
-    if (Objects.nonNull(connection)) {
-      try {
-        connection.close();
-      } catch (Exception e) {
-        e.printStackTrace();
-      }
-    }
+    EnvFactory.getEnv().cleanAfterClass();
   }
 
   private static void initCreateSQLStatement() {
@@ -101,10 +90,9 @@ public class IoTDBFuzzyQueryIT {
     sqls.add("insert into root.t1.wf01.wt02 (time,status) values 
(1509465600000,'14')");
   }
 
-  private static void insertData() throws ClassNotFoundException, SQLException 
{
-    Class.forName(Config.JDBC_DRIVER_NAME);
-    connection =
-        DriverManager.getConnection(Config.IOTDB_URL_PREFIX + 
"127.0.0.1:6667/", "root", "root");
+  private static void insertData() throws SQLException {
+
+    Connection connection = EnvFactory.getEnv().getConnection();
     Statement statement = connection.createStatement();
 
     for (String sql : sqls) {
@@ -115,58 +103,60 @@ public class IoTDBFuzzyQueryIT {
 
   @Test
   public void testLike() throws SQLException {
+    Connection connection = EnvFactory.getEnv().getConnection();
     Statement st0 = connection.createStatement();
-    boolean hasResultSet =
-        st0.execute("select status from root.t1.wf01.wt01 where status like 
'1'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("1", outputResultStr(st0.getResultSet()));
-    hasResultSet = st0.execute("select status from root.t1.wf01.wt01 where 
status like '%'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals(
-        "1,14,616,626,6116,6%16,8[sS]*,%123,123%,\\\\", 
outputResultStr(st0.getResultSet()));
-
-    hasResultSet = st0.execute("select status from root.t1.wf01.wt01 where 
status like '1%'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("1,14,123%", outputResultStr(st0.getResultSet()));
-
-    hasResultSet = st0.execute("select status from root.t1.wf01.wt01 where 
status like '%1%'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("1,14,616,6116,6%16,%123,123%", 
outputResultStr(st0.getResultSet()));
-
-    hasResultSet = st0.execute("select status from root.t1.wf01.wt01 where 
status like '6%6'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("616,626,6116,6%16", 
outputResultStr(st0.getResultSet()));
-
-    hasResultSet = st0.execute("select status from root.t1.wf01.wt01 where 
status like '1_'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("14", outputResultStr(st0.getResultSet()));
-
-    hasResultSet = st0.execute("select status from root.t1.wf01.wt01 where 
status like '6_1%'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("6116,6%16", outputResultStr(st0.getResultSet()));
-
-    hasResultSet = st0.execute("select status from root.t1.wf01.wt01 where 
status like '6\\%%'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("6%16", outputResultStr(st0.getResultSet()));
-
-    hasResultSet = st0.execute("select status from root.t1.wf01.wt01 where 
status like '\\%%'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("%123", outputResultStr(st0.getResultSet()));
-
-    hasResultSet = st0.execute("select status from root.t1.wf01.wt01 where 
status like '%\\%'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("123%", outputResultStr(st0.getResultSet()));
-
-    hasResultSet =
-        st0.execute("select status from root.t1.wf01.wt01 where status like 
'%\\\\\\\\%'");
-    Assert.assertTrue(hasResultSet);
-    Assert.assertEquals("\\\\", outputResultStr(st0.getResultSet()));
+    ResultSet resultSet =
+        st0.executeQuery("select status from root.t1.wf01.wt01 where status 
like '1'");
+
+    Assert.assertEquals("1", outputResultStr(resultSet));
+
+    resultSet = st0.executeQuery("select status from root.t1.wf01.wt01 where 
status like '%'");
+
+    Assert.assertEquals("1,14,616,626,6116,6%16,8[sS]*,%123,123%,\\\\", 
outputResultStr(resultSet));
+
+    resultSet = st0.executeQuery("select status from root.t1.wf01.wt01 where 
status like '1%'");
+
+    Assert.assertEquals("1,14,123%", outputResultStr(resultSet));
+
+    resultSet = st0.executeQuery("select status from root.t1.wf01.wt01 where 
status like '%1%'");
+
+    Assert.assertEquals("1,14,616,6116,6%16,%123,123%", 
outputResultStr(resultSet));
+
+    resultSet = st0.executeQuery("select status from root.t1.wf01.wt01 where 
status like '6%6'");
+
+    Assert.assertEquals("616,626,6116,6%16", outputResultStr(resultSet));
+
+    resultSet = st0.executeQuery("select status from root.t1.wf01.wt01 where 
status like '1_'");
+
+    Assert.assertEquals("14", outputResultStr(resultSet));
+
+    resultSet = st0.executeQuery("select status from root.t1.wf01.wt01 where 
status like '6_1%'");
+
+    Assert.assertEquals("6116,6%16", outputResultStr(resultSet));
+
+    resultSet = st0.executeQuery("select status from root.t1.wf01.wt01 where 
status like '6\\%%'");
+
+    Assert.assertEquals("6%16", outputResultStr(resultSet));
+
+    resultSet = st0.executeQuery("select status from root.t1.wf01.wt01 where 
status like '\\%%'");
+
+    Assert.assertEquals("%123", outputResultStr(resultSet));
+
+    resultSet = st0.executeQuery("select status from root.t1.wf01.wt01 where 
status like '%\\%'");
+
+    Assert.assertEquals("123%", outputResultStr(resultSet));
+
+    resultSet =
+        st0.executeQuery("select status from root.t1.wf01.wt01 where status 
like '%\\\\\\\\%'");
+
+    Assert.assertEquals("\\\\", outputResultStr(resultSet));
   }
 
   @Test(expected = Exception.class)
   public void testLikeNonTextCloumn() throws SQLException {
+    Connection connection = EnvFactory.getEnv().getConnection();
     Statement st1 = connection.createStatement();
-    st1.execute("select * from root.t1.wf01.wt01 where temperature like '1'");
+    st1.executeQuery("select * from root.t1.wf01.wt01 where temperature like 
'1'");
   }
 
   private String outputResultStr(ResultSet resultSet) throws SQLException {
@@ -201,18 +191,12 @@ public class IoTDBFuzzyQueryIT {
   public void selectLikeAlignByDevice() throws ClassNotFoundException {
     String[] retArray =
         new String[] {"1509465660000,root.t1.wf01.wt01,14,", 
"1509465600000,root.t1.wf01.wt02,14"};
-
-    Class.forName(Config.JDBC_DRIVER_NAME);
-    try (Connection connection =
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+    try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
-      boolean hasResultSet =
-          statement.execute(
-              "select status from root.t1.wf01.wt0* where status like '14%' 
align by device");
-      Assert.assertTrue(hasResultSet);
 
-      try (ResultSet resultSet = statement.getResultSet()) {
+      try (ResultSet resultSet =
+          statement.executeQuery(
+              "select status from root.t1.wf01.wt0* where status like '14%' 
align by device")) {
         ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
         List<Integer> actualIndexToExpectedIndexList =
             checkHeader(
@@ -252,17 +236,12 @@ public class IoTDBFuzzyQueryIT {
           "1509465600000,root.t1.wf01.wt02,14,"
         };
 
-    Class.forName(Config.JDBC_DRIVER_NAME);
-    try (Connection connection =
-            DriverManager.getConnection(
-                Config.IOTDB_URL_PREFIX + "127.0.0.1:6667/", "root", "root");
+    try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
-      boolean hasResultSet =
-          statement.execute(
-              "select status from root.t1.wf01.wt0* where status regexp '^1.*' 
align by device");
-      Assert.assertTrue(hasResultSet);
 
-      try (ResultSet resultSet = statement.getResultSet()) {
+      try (ResultSet resultSet =
+          statement.executeQuery(
+              "select status from root.t1.wf01.wt0* where status regexp '^1.*' 
align by device"); ) {
         ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
         List<Integer> actualIndexToExpectedIndexList =
             checkHeader(
diff --git 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBInIT.java 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBInIT.java
similarity index 90%
rename from 
integration/src/test/java/org/apache/iotdb/db/integration/IoTDBInIT.java
rename to 
integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBInIT.java
index a6670ca4f6..8ef0bfe4b0 100644
--- a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBInIT.java
+++ b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBInIT.java
@@ -16,18 +16,20 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.iotdb.db.integration;
 
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.itbase.category.ClusterTest;
-import org.apache.iotdb.itbase.category.LocalStandaloneTest;
-import org.apache.iotdb.itbase.category.RemoteTest;
+package org.apache.iotdb.db.it.query;
+
+import org.apache.iotdb.it.env.EnvFactory;
+import org.apache.iotdb.it.framework.IoTDBTestRunner;
+import org.apache.iotdb.itbase.category.ClusterIT;
+import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
 
 import java.sql.Connection;
 import java.sql.ResultSet;
@@ -42,7 +44,8 @@ import java.util.Map;
 
 import static org.junit.Assert.fail;
 
-@Category({LocalStandaloneTest.class, ClusterTest.class, RemoteTest.class})
+@RunWith(IoTDBTestRunner.class)
+@Category({LocalStandaloneIT.class, ClusterIT.class})
 public class IoTDBInIT {
 
   private static String[] sqls =
@@ -98,12 +101,10 @@ public class IoTDBInIT {
 
     try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
-      boolean hasResultSet =
-          statement.execute(
-              "select qrcode from root.sg.d1.* where qrcode in ('qrcode002', 
'qrcode003')");
-      Assert.assertTrue(hasResultSet);
 
-      try (ResultSet resultSet = statement.getResultSet()) {
+      try (ResultSet resultSet =
+          statement.executeQuery(
+              "select qrcode from root.sg.d1.* where qrcode in ('qrcode002', 
'qrcode003')")) {
         ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
         List<Integer> actualIndexToExpectedIndexList =
             checkHeader(
@@ -142,12 +143,10 @@ public class IoTDBInIT {
 
     try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
-      boolean hasResultSet =
-          statement.execute(
-              "select qrcode from root.sg.*.* where qrcode in ('qrcode002', 
'qrcode003', 'qrcode004')");
-      Assert.assertTrue(hasResultSet);
 
-      try (ResultSet resultSet = statement.getResultSet()) {
+      try (ResultSet resultSet =
+          statement.executeQuery(
+              "select qrcode from root.sg.*.* where qrcode in ('qrcode002', 
'qrcode003', 'qrcode004')")) {
         ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
         List<Integer> actualIndexToExpectedIndexList =
             checkHeader(
@@ -194,12 +193,10 @@ public class IoTDBInIT {
 
     try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
-      boolean hasResultSet =
-          statement.execute(
-              "select qrcode from root.sg.*.* where qrcode in ('qrcode002', 
'qrcode004') align by device");
-      Assert.assertTrue(hasResultSet);
 
-      try (ResultSet resultSet = statement.getResultSet()) {
+      try (ResultSet resultSet =
+          statement.executeQuery(
+              "select qrcode from root.sg.*.* where qrcode in ('qrcode002', 
'qrcode004') align by device")) {
         ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
         List<Integer> actualIndexToExpectedIndexList =
             checkHeader(
diff --git 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBQueryDemoIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBQueryDemoIT.java
similarity index 51%
rename from 
integration/src/test/java/org/apache/iotdb/db/integration/IoTDBQueryDemoIT.java
rename to 
integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBQueryDemoIT.java
index ffb0ffc417..940e4771d7 100644
--- 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBQueryDemoIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBQueryDemoIT.java
@@ -16,18 +16,19 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.iotdb.db.integration;
+package org.apache.iotdb.db.it.query;
 
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.itbase.category.ClusterTest;
-import org.apache.iotdb.itbase.category.LocalStandaloneTest;
-import org.apache.iotdb.itbase.category.RemoteTest;
+import org.apache.iotdb.it.env.EnvFactory;
+import org.apache.iotdb.it.framework.IoTDBTestRunner;
+import org.apache.iotdb.itbase.category.ClusterIT;
+import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
 
 import java.sql.Connection;
 import java.sql.ResultSet;
@@ -42,7 +43,8 @@ import java.util.Map;
 
 import static org.junit.Assert.fail;
 
-@Category({LocalStandaloneTest.class, ClusterTest.class, RemoteTest.class})
+@RunWith(IoTDBTestRunner.class)
+@Category({LocalStandaloneIT.class, ClusterIT.class})
 public class IoTDBQueryDemoIT {
 
   private static String[] sqls =
@@ -160,43 +162,40 @@ public class IoTDBQueryDemoIT {
 
     try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
-      boolean hasResultSet = statement.execute("select * from root.** where 
time>10");
-      Assert.assertTrue(hasResultSet);
-
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
-                    + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
-                    + "root.sgcc.wf03.wt01.temperature,",
-                new int[] {
-                  Types.TIMESTAMP,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                  Types.VARCHAR,
-                  Types.BOOLEAN,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+
+      ResultSet resultSet = statement.executeQuery("select * from root.** 
where time>10");
+      ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+      List<Integer> actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
+                  + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
+                  + "root.sgcc.wf03.wt01.temperature,",
+              new int[] {
+                Types.TIMESTAMP,
+                Types.BOOLEAN,
+                Types.FLOAT,
+                Types.VARCHAR,
+                Types.BOOLEAN,
+                Types.BOOLEAN,
+                Types.FLOAT,
+              });
+
+      int cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(10, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(10, cnt);
     } catch (Exception e) {
       e.printStackTrace();
       fail(e.getMessage());
@@ -220,83 +219,80 @@ public class IoTDBQueryDemoIT {
       // test 1: fetchSize < limitNumber
       statement.setFetchSize(4);
       Assert.assertEquals(4, statement.getFetchSize());
-      boolean hasResultSet =
-          statement.execute("select * from root.** where time>10 limit 5 
offset 3");
-      Assert.assertTrue(hasResultSet);
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
-                    + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
-                    + "root.sgcc.wf03.wt01.temperature,",
-                new int[] {
-                  Types.TIMESTAMP,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                  Types.VARCHAR,
-                  Types.BOOLEAN,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+
+      ResultSet resultSet =
+          statement.executeQuery("select * from root.** where time>10 limit 5 
offset 3");
+      ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+      List<Integer> actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
+                  + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
+                  + "root.sgcc.wf03.wt01.temperature,",
+              new int[] {
+                Types.TIMESTAMP,
+                Types.BOOLEAN,
+                Types.FLOAT,
+                Types.VARCHAR,
+                Types.BOOLEAN,
+                Types.BOOLEAN,
+                Types.FLOAT,
+              });
+
+      int cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(5, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(5, cnt);
 
       // test 1: fetchSize > limitNumber
       statement.setFetchSize(10000);
       Assert.assertEquals(10000, statement.getFetchSize());
-      hasResultSet = statement.execute("select * from root.** where time>10 
limit 5 offset 3");
-      Assert.assertTrue(hasResultSet);
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
-                    + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
-                    + "root.sgcc.wf03.wt01.temperature,",
-                new int[] {
-                  Types.TIMESTAMP,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                  Types.VARCHAR,
-                  Types.BOOLEAN,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+      resultSet = statement.executeQuery("select * from root.** where time>10 
limit 5 offset 3");
+
+      resultSetMetaData = resultSet.getMetaData();
+      actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
+                  + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
+                  + "root.sgcc.wf03.wt01.temperature,",
+              new int[] {
+                Types.TIMESTAMP,
+                Types.BOOLEAN,
+                Types.FLOAT,
+                Types.VARCHAR,
+                Types.BOOLEAN,
+                Types.BOOLEAN,
+                Types.FLOAT,
+              });
+
+      cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(5, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(5, cnt);
+
     } catch (Exception e) {
       e.printStackTrace();
       fail(e.getMessage());
@@ -320,44 +316,41 @@ public class IoTDBQueryDemoIT {
       // test 1: fetchSize < limitNumber
       statement.setFetchSize(4);
       Assert.assertEquals(4, statement.getFetchSize());
-      boolean hasResultSet =
-          statement.execute(
+      ResultSet resultSet =
+          statement.executeQuery(
               "select * from root.** where time in (1509465780000, 
1509465840000, 1509465900000, 1509465960000, 1509466020000)");
-      Assert.assertTrue(hasResultSet);
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
-                    + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
-                    + "root.sgcc.wf03.wt01.temperature,",
-                new int[] {
-                  Types.TIMESTAMP,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                  Types.VARCHAR,
-                  Types.BOOLEAN,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+      ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+      List<Integer> actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
+                  + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
+                  + "root.sgcc.wf03.wt01.temperature,",
+              new int[] {
+                Types.TIMESTAMP,
+                Types.BOOLEAN,
+                Types.FLOAT,
+                Types.VARCHAR,
+                Types.BOOLEAN,
+                Types.BOOLEAN,
+                Types.FLOAT,
+              });
+
+      int cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(5, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(5, cnt);
 
       retArray =
           new String[] {
@@ -367,44 +360,42 @@ public class IoTDBQueryDemoIT {
             "1509466080000,false,22.58,v1,false,false,22.58,",
             "1509466140000,false,20.98,v1,false,false,20.98,",
           };
-      hasResultSet =
-          statement.execute(
+      resultSet =
+          statement.executeQuery(
               "select * from root.** where time not in (1509465780000, 
1509465840000, 1509465900000, 1509465960000, 1509466020000)");
-      Assert.assertTrue(hasResultSet);
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
-                    + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
-                    + "root.sgcc.wf03.wt01.temperature,",
-                new int[] {
-                  Types.TIMESTAMP,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                  Types.VARCHAR,
-                  Types.BOOLEAN,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+
+      resultSetMetaData = resultSet.getMetaData();
+      actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
+                  + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
+                  + "root.sgcc.wf03.wt01.temperature,",
+              new int[] {
+                Types.TIMESTAMP,
+                Types.BOOLEAN,
+                Types.FLOAT,
+                Types.VARCHAR,
+                Types.BOOLEAN,
+                Types.BOOLEAN,
+                Types.FLOAT,
+              });
+
+      cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(5, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(5, cnt);
 
       retArray =
           new String[] {
@@ -412,44 +403,43 @@ public class IoTDBQueryDemoIT {
             "1509465960000,false,20.71,v1,false,false,20.71,",
             "1509466080000,false,22.58,v1,false,false,22.58,",
           };
-      hasResultSet =
-          statement.execute(
+
+      resultSet =
+          statement.executeQuery(
               "select * from root.** where root.ln.wf01.wt01.temperature in 
(20.18, 20.71, 22.58)");
-      Assert.assertTrue(hasResultSet);
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
-                    + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
-                    + "root.sgcc.wf03.wt01.temperature,",
-                new int[] {
-                  Types.TIMESTAMP,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                  Types.VARCHAR,
-                  Types.BOOLEAN,
-                  Types.BOOLEAN,
-                  Types.FLOAT,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+
+      resultSetMetaData = resultSet.getMetaData();
+      actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time,root.ln.wf01.wt01.status,root.ln.wf01.wt01.temperature,"
+                  + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,root.sgcc.wf03.wt01.status,"
+                  + "root.sgcc.wf03.wt01.temperature,",
+              new int[] {
+                Types.TIMESTAMP,
+                Types.BOOLEAN,
+                Types.FLOAT,
+                Types.VARCHAR,
+                Types.BOOLEAN,
+                Types.BOOLEAN,
+                Types.FLOAT,
+              });
+
+      cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(3, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(3, cnt);
     } catch (Exception e) {
       e.printStackTrace();
       fail(e.getMessage());
@@ -479,7 +469,7 @@ public class IoTDBQueryDemoIT {
   public void testWrongTextQuery() {
     try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
-      statement.execute("select * from root.ln.wf02.wt02 where hardware > 
'v1'");
+      statement.executeQuery("select * from root.ln.wf02.wt02 where hardware > 
'v1'");
     } catch (Exception e) {
       Assert.assertEquals(
           e.getMessage(),
@@ -496,35 +486,32 @@ public class IoTDBQueryDemoIT {
         };
     try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
-      boolean hasResultSet =
-          statement.execute("select hardware from root.ln.wf02.wt02 where 
hardware = 'v2'");
-      Assert.assertTrue(hasResultSet);
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time,root.ln.wf02.wt02.hardware,",
-                new int[] {
-                  Types.TIMESTAMP, Types.VARCHAR,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+      ResultSet resultSet =
+          statement.executeQuery("select hardware from root.ln.wf02.wt02 where 
hardware = 'v2'");
+      ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+      List<Integer> actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time,root.ln.wf02.wt02.hardware,",
+              new int[] {
+                Types.TIMESTAMP, Types.VARCHAR,
+              });
+
+      int cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(2, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(2, cnt);
 
     } catch (Exception e) {
       Assert.assertNull(e.getMessage());
@@ -544,36 +531,33 @@ public class IoTDBQueryDemoIT {
       statement.setFetchSize(4);
       Assert.assertEquals(4, statement.getFetchSize());
       // Matches a string consisting of one lowercase letter and one digit. 
such as: "v1","v2"
-      boolean hasResultSet =
-          statement.execute(
+      ResultSet resultSet =
+          statement.executeQuery(
               "select hardware,status from root.ln.wf02.wt02 where hardware 
regexp '^[a-z][0-9]$' and time < 1509465780000");
-      Assert.assertTrue(hasResultSet);
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time," + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,",
-                new int[] {
-                  Types.TIMESTAMP, Types.VARCHAR, Types.BOOLEAN,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+      ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+      List<Integer> actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time," + "root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,",
+              new int[] {
+                Types.TIMESTAMP, Types.VARCHAR, Types.BOOLEAN,
+              });
+
+      int cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(3, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(3, cnt);
 
       retArray =
           new String[] {
@@ -588,36 +572,34 @@ public class IoTDBQueryDemoIT {
             "1509466080000,v1,false,",
             "1509466140000,v1,false,",
           };
-      hasResultSet =
-          statement.execute(
+      resultSet =
+          statement.executeQuery(
               "select hardware,status from root.ln.wf02.wt02 where hardware 
regexp 'v*' ");
-      Assert.assertTrue(hasResultSet);
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time," + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,",
-                new int[] {
-                  Types.TIMESTAMP, Types.VARCHAR, Types.BOOLEAN,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+
+      resultSetMetaData = resultSet.getMetaData();
+      actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time," + "root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,",
+              new int[] {
+                Types.TIMESTAMP, Types.VARCHAR, Types.BOOLEAN,
+              });
+
+      cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(10, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(10, cnt);
 
     } catch (Exception e) {
       e.printStackTrace();
@@ -646,36 +628,33 @@ public class IoTDBQueryDemoIT {
     try (Connection connection = EnvFactory.getEnv().getConnection();
         Statement statement = connection.createStatement()) {
 
-      boolean hasResultSet =
-          statement.execute(
+      ResultSet resultSet =
+          statement.executeQuery(
               "select hardware,status from root.ln.wf02.wt02 where hardware 
regexp 's.' ");
-      Assert.assertTrue(hasResultSet);
-      try (ResultSet resultSet = statement.getResultSet()) {
-        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
-        List<Integer> actualIndexToExpectedIndexList =
-            checkHeader(
-                resultSetMetaData,
-                "Time," + 
"root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,",
-                new int[] {
-                  Types.TIMESTAMP, Types.VARCHAR, Types.BOOLEAN,
-                });
-
-        int cnt = 0;
-        while (resultSet.next()) {
-          String[] expectedStrings = retArray[cnt].split(",");
-          StringBuilder expectedBuilder = new StringBuilder();
-          StringBuilder actualBuilder = new StringBuilder();
-          for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
-            actualBuilder.append(resultSet.getString(i)).append(",");
-            expectedBuilder
-                .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
-                .append(",");
-          }
-          Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
-          cnt++;
+      ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
+      List<Integer> actualIndexToExpectedIndexList =
+          checkHeader(
+              resultSetMetaData,
+              "Time," + "root.ln.wf02.wt02.hardware,root.ln.wf02.wt02.status,",
+              new int[] {
+                Types.TIMESTAMP, Types.VARCHAR, Types.BOOLEAN,
+              });
+
+      int cnt = 0;
+      while (resultSet.next()) {
+        String[] expectedStrings = retArray[cnt].split(",");
+        StringBuilder expectedBuilder = new StringBuilder();
+        StringBuilder actualBuilder = new StringBuilder();
+        for (int i = 1; i <= resultSetMetaData.getColumnCount(); i++) {
+          actualBuilder.append(resultSet.getString(i)).append(",");
+          expectedBuilder
+              .append(expectedStrings[actualIndexToExpectedIndexList.get(i - 
1)])
+              .append(",");
         }
-        Assert.assertEquals(0, cnt);
+        Assert.assertEquals(expectedBuilder.toString(), 
actualBuilder.toString());
+        cnt++;
       }
+      Assert.assertEquals(0, cnt);
 
     } catch (Exception e) {
       e.printStackTrace();
diff --git 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSelectCompareExpressionIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBSelectCompareExpressionIT.java
similarity index 98%
rename from 
integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSelectCompareExpressionIT.java
rename to 
integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBSelectCompareExpressionIT.java
index fcde0a69d5..b9c8436c48 100644
--- 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSelectCompareExpressionIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBSelectCompareExpressionIT.java
@@ -17,16 +17,18 @@
  * under the License.
  */
 
-package org.apache.iotdb.db.integration;
+package org.apache.iotdb.db.it.query;
 
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.itbase.category.ClusterTest;
-import org.apache.iotdb.itbase.category.LocalStandaloneTest;
+import org.apache.iotdb.it.env.EnvFactory;
+import org.apache.iotdb.it.framework.IoTDBTestRunner;
+import org.apache.iotdb.itbase.category.ClusterIT;
+import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
 
 import java.sql.Connection;
 import java.sql.ResultSet;
@@ -39,7 +41,8 @@ import java.util.Random;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
-@Category({LocalStandaloneTest.class, ClusterTest.class})
+@RunWith(IoTDBTestRunner.class)
+@Category({LocalStandaloneIT.class, ClusterIT.class})
 public class IoTDBSelectCompareExpressionIT {
 
   private static String[] INSERTION_SQLS;
diff --git 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSelectSchemaIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBSelectSchemaIT.java
similarity index 92%
rename from 
integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSelectSchemaIT.java
rename to 
integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBSelectSchemaIT.java
index a4920d6d96..829954ec97 100644
--- 
a/integration/src/test/java/org/apache/iotdb/db/integration/IoTDBSelectSchemaIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/db/it/query/IoTDBSelectSchemaIT.java
@@ -17,16 +17,18 @@
  * under the License.
  */
 
-package org.apache.iotdb.db.integration;
+package org.apache.iotdb.db.it.query;
 
-import org.apache.iotdb.integration.env.EnvFactory;
-import org.apache.iotdb.itbase.category.ClusterTest;
-import org.apache.iotdb.itbase.category.LocalStandaloneTest;
+import org.apache.iotdb.it.env.EnvFactory;
+import org.apache.iotdb.it.framework.IoTDBTestRunner;
+import org.apache.iotdb.itbase.category.ClusterIT;
+import org.apache.iotdb.itbase.category.LocalStandaloneIT;
 
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
 
 import java.sql.Connection;
 import java.sql.ResultSet;
@@ -36,7 +38,8 @@ import java.sql.Statement;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
-@Category({LocalStandaloneTest.class, ClusterTest.class})
+@RunWith(IoTDBTestRunner.class)
+@Category({LocalStandaloneIT.class, ClusterIT.class})
 public class IoTDBSelectSchemaIT {
   private static String INSERTION_SQLS =
       "insert into root.sg.d1(time, s1, s2, s3) values (1, 1, 2, 3.0);";

Reply via email to