You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by du...@apache.org on 2023/01/18 09:28:46 UTC

[shardingsphere] branch master updated: Refactor : refactor the testcontainer related config (#23622)

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 76c867004ef Refactor : refactor the testcontainer related config (#23622)
76c867004ef is described below

commit 76c867004ef72d68cfaa4b9b9b3e4b9dc03fd4d7
Author: 孙念君 Nianjun Sun <su...@apache.org>
AuthorDate: Wed Jan 18 17:28:37 2023 +0800

    Refactor : refactor the testcontainer related config (#23622)
    
    * Refactor : extract the testcontainer related constants to enum
    
    * Refactor : extract the testcontainer related constants to enum
    
    * Refactor : refactor the adapters in transaction E2E
---
 .../container/compose/DockerContainerComposer.java    | 11 +++++------
 .../config/MySQLContainerConfigurationFactory.java    | 10 +++++-----
 .../atomic/constants/StorageContainerConstants.java   | 14 --------------
 .../AdapterContainerEnum.java}                        | 19 +++++++++++--------
 .../AdapterModeEnum.java}                             | 19 ++++++++++---------
 .../atomic/storage/DockerStorageContainer.java        |  2 --
 .../mysql/MySQLContainerConfigurationFactory.java     |  6 +++---
 .../OpenGaussContainerConfigurationFactory.java       |  5 +++--
 .../PostgreSQLContainerConfigurationFactory.java      |  5 +++--
 .../container/atomic/storage/impl/MySQLContainer.java |  9 ++++++---
 .../atomic/storage/impl/OpenGaussContainer.java       | 10 ++++++++--
 .../atomic/storage/impl/PostgreSQLContainer.java      |  9 ++++++---
 .../container/wait/JdbcConnectionWaitStrategy.java    |  2 +-
 .../cases/createtable/CreateTableSQLGeneratorIT.java  |  4 ++--
 .../e2e/data/pipeline/env/PipelineE2EEnvironment.java | 10 ++++++----
 .../container/compose/DockerContainerComposer.java    | 12 ++++++------
 .../container/compose/ContainerComposerRegistry.java  |  8 ++++----
 .../test/e2e/engine/TotalSuitesCountCalculator.java   |  8 ++++----
 .../array/ClusterTestParameterArrayGenerator.java     |  6 +++---
 .../param/array/E2ETestParameterFactory.java          | 10 +++++-----
 .../array/JdbcStandaloneTestParameterGenerator.java   | 10 +++++-----
 .../array/ProxyStandaloneTestParameterGenerator.java  |  6 +++---
 .../cases/alterresource/AddResourceTestCase.java      |  3 +--
 .../cases/alterresource/CloseResourceTestCase.java    |  3 +--
 .../cases/cursor/OpenGaussCursorTestCase.java         |  3 +--
 .../cases/nested/NestedTransactionTestCase.java       |  4 ++--
 .../cases/truncate/MySQLXATruncateTestCase.java       |  3 +--
 .../test/e2e/transaction/engine/base/BaseE2EIT.java   | 12 ++++++------
 .../transaction/engine/base/TransactionBaseE2EIT.java |  4 ++--
 .../engine/constants/TransactionTestConstants.java    |  4 ++++
 .../transaction/env/TransactionE2EEnvironment.java    | 13 ++++++++-----
 .../env/enums/TransactionTestCaseRegistry.java        | 14 +++++++-------
 .../container/compose/DockerContainerComposer.java    | 16 ++++++++--------
 .../mysql/MySQLContainerConfigurationFactory.java     |  4 ++--
 .../OpenGaussContainerConfigurationFactory.java       |  3 ++-
 .../PostgreSQLContainerConfigurationFactory.java      |  3 ++-
 36 files changed, 146 insertions(+), 138 deletions(-)

diff --git a/test/e2e/discovery/src/test/java/org/apache/shardingsphere/test/e2e/discovery/framework/container/compose/DockerContainerComposer.java b/test/e2e/discovery/src/test/java/org/apache/shardingsphere/test/e2e/discovery/framework/container/compose/DockerContainerComposer.java
index 83bf89fb86f..415da898921 100644
--- a/test/e2e/discovery/src/test/java/org/apache/shardingsphere/test/e2e/discovery/framework/container/compose/DockerContainerComposer.java
+++ b/test/e2e/discovery/src/test/java/org/apache/shardingsphere/test/e2e/discovery/framework/container/compose/DockerContainerComposer.java
@@ -21,13 +21,14 @@ import lombok.Getter;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.test.e2e.discovery.framework.container.config.MySQLContainerConfigurationFactory;
+import org.apache.shardingsphere.test.e2e.discovery.framework.container.config.ProxyClusterContainerConfigurationFactory;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.adapter.AdapterContainerFactory;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.adapter.config.AdaptorContainerConfiguration;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.adapter.impl.ShardingSphereProxyClusterContainer;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.EnvironmentConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.ProxyContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterContainerEnum;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterModeEnum;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.governance.GovernanceContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.governance.impl.ZookeeperContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.DockerStorageContainer;
@@ -36,7 +37,6 @@ import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.St
 import org.apache.shardingsphere.test.e2e.env.container.atomic.util.ContainerUtil;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.util.StorageContainerUtil;
 import org.apache.shardingsphere.test.e2e.env.runtime.DataSourceEnvironment;
-import org.apache.shardingsphere.test.e2e.discovery.framework.container.config.ProxyClusterContainerConfigurationFactory;
 
 import javax.sql.DataSource;
 import java.util.Collections;
@@ -64,7 +64,7 @@ public final class DockerContainerComposer extends BaseContainerComposer {
     public DockerContainerComposer(final String scenario, final DatabaseType databaseType, final String storageContainerImage) {
         super("");
         this.databaseType = databaseType;
-        this.storageContainers = new LinkedList<>();
+        storageContainers = new LinkedList<>();
         governanceContainer = getContainers().registerContainer(new ZookeeperContainer());
         List<StorageContainerConfiguration> containerConfigs = MySQLContainerConfigurationFactory.newInstance(scenario, databaseType);
         containerConfigs.forEach(each -> {
@@ -72,10 +72,9 @@ public final class DockerContainerComposer extends BaseContainerComposer {
             storageContainer.setNetworkAliases(Collections.singletonList(databaseType.getType().toLowerCase() + "_" + ContainerUtil.generateStorageContainerId()));
             storageContainers.add(storageContainer);
         });
-        
         AdaptorContainerConfiguration containerConfig = ProxyClusterContainerConfigurationFactory.newInstance(scenario);
         ShardingSphereProxyClusterContainer proxyClusterContainer = (ShardingSphereProxyClusterContainer) AdapterContainerFactory
-                .newInstance(EnvironmentConstants.CLUSTER_MODE, AdapterContainerConstants.PROXY, databaseType, null, "", containerConfig);
+                .newInstance(AdapterModeEnum.CLUSTER.getValue(), AdapterContainerEnum.PROXY.getValue(), databaseType, null, "", containerConfig);
         storageContainers.forEach(each -> proxyClusterContainer.dependsOn(governanceContainer, each));
         proxyContainer = getContainers().registerContainer(proxyClusterContainer);
     }
diff --git a/test/e2e/discovery/src/test/java/org/apache/shardingsphere/test/e2e/discovery/framework/container/config/MySQLContainerConfigurationFactory.java b/test/e2e/discovery/src/test/java/org/apache/shardingsphere/test/e2e/discovery/framework/container/config/MySQLContainerConfigurationFactory.java
index 24063c1b638..2090c568dc5 100644
--- a/test/e2e/discovery/src/test/java/org/apache/shardingsphere/test/e2e/discovery/framework/container/config/MySQLContainerConfigurationFactory.java
+++ b/test/e2e/discovery/src/test/java/org/apache/shardingsphere/test/e2e/discovery/framework/container/config/MySQLContainerConfigurationFactory.java
@@ -20,10 +20,10 @@ package org.apache.shardingsphere.test.e2e.discovery.framework.container.config;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
+import org.apache.shardingsphere.test.e2e.discovery.util.DiscoveryContainerUtil;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.MySQLContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.util.ContainerUtil;
-import org.apache.shardingsphere.test.e2e.discovery.util.DiscoveryContainerUtil;
 
 import java.util.Collections;
 import java.util.HashMap;
@@ -65,13 +65,13 @@ public final class MySQLContainerConfigurationFactory {
     }
     
     private static Map<String, String> getMountedResources(final String scenario, final DatabaseType databaseType, final int order) {
-        return 0 == order ? Collections.singletonMap(String.format("/env/scenario/%s/my.cnf", scenario), StorageContainerConstants.MYSQL_CONF_IN_CONTAINER)
+        return 0 == order ? Collections.singletonMap(String.format("/env/scenario/%s/my.cnf", scenario), MySQLContainer.MYSQL_CONF_IN_CONTAINER)
                 : Collections.singletonMap(String.format("/env/scenario/%s/%s/my.cnf", scenario, databaseType.getType().toLowerCase() + "_" + order),
-                        StorageContainerConstants.MYSQL_CONF_IN_CONTAINER);
+                        MySQLContainer.MYSQL_CONF_IN_CONTAINER);
     }
     
     private static List<StorageContainerConfiguration> getDefaultConfiguration(final DatabaseType databaseType) {
         return Collections.singletonList(new StorageContainerConfiguration(getCommand(), getContainerEnvironments(),
-                Collections.singletonMap(String.format("/env/%s/my.cnf", databaseType.getType().toLowerCase()), StorageContainerConstants.MYSQL_CONF_IN_CONTAINER)));
+                Collections.singletonMap(String.format("/env/%s/my.cnf", databaseType.getType().toLowerCase()), MySQLContainer.MYSQL_CONF_IN_CONTAINER)));
     }
 }
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/StorageContainerConstants.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/StorageContainerConstants.java
index d7d9fbf6aaa..6a056ba270a 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/StorageContainerConstants.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/StorageContainerConstants.java
@@ -26,21 +26,7 @@ import lombok.NoArgsConstructor;
 @NoArgsConstructor(access = AccessLevel.PRIVATE)
 public final class StorageContainerConstants {
     
-    public static final int MYSQL_EXPOSED_PORT = 3306;
-    
-    public static final int POSTGRESQL_EXPOSED_PORT = 5432;
-    
-    public static final int OPENGAUSS_EXPOSED_PORT = 5432;
-    
     public static final String USERNAME = "test_user";
     
     public static final String PASSWORD = "Test@123";
-    
-    public static final String MYSQL_CONF_IN_CONTAINER = "/etc/mysql/my.cnf";
-    
-    public static final String POSTGRESQL_CONF_IN_CONTAINER = "/etc/postgresql/postgresql.conf";
-    
-    public static final String OPENGAUSS_CONF_IN_CONTAINER = "/usr/local/opengauss/share/postgresql/postgresql.conf.sample";
-    
-    public static final String OPENGAUSS_HBA_IN_CONF_CONTAINER = "/usr/local/opengauss/share/postgresql/pg_hba.conf.sample";
 }
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/AdapterContainerConstants.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/enums/AdapterContainerEnum.java
similarity index 75%
rename from test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/AdapterContainerConstants.java
rename to test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/enums/AdapterContainerEnum.java
index 3675c37d096..7941d8c1937 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/AdapterContainerConstants.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/enums/AdapterContainerEnum.java
@@ -15,18 +15,21 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.test.e2e.env.container.atomic.constants;
+package org.apache.shardingsphere.test.e2e.env.container.atomic.enums;
 
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
+import lombok.Getter;
+import lombok.RequiredArgsConstructor;
 
 /**
- * Adapter container constants.
+ * Adapter container type.
  */
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class AdapterContainerConstants {
+@RequiredArgsConstructor
+@Getter
+public enum AdapterContainerEnum {
     
-    public static final String PROXY = "proxy";
+    JDBC("jdbc"),
     
-    public static final String JDBC = "jdbc";
+    PROXY("proxy");
+    
+    private final String value;
 }
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/EnvironmentConstants.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/enums/AdapterModeEnum.java
similarity index 71%
rename from test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/EnvironmentConstants.java
rename to test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/enums/AdapterModeEnum.java
index d3fde39b54b..5aa100c9461 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/constants/EnvironmentConstants.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/enums/AdapterModeEnum.java
@@ -15,20 +15,21 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.test.e2e.env.container.atomic.constants;
+package org.apache.shardingsphere.test.e2e.env.container.atomic.enums;
 
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
+import lombok.Getter;
+import lombok.RequiredArgsConstructor;
 
 /**
- * Environment constant.
+ * Adapter mode type.
  */
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class EnvironmentConstants {
+@RequiredArgsConstructor
+@Getter
+public enum AdapterModeEnum {
     
-    public static final String CLUSTER_MODE = "Cluster";
+    STANDALONE("Standalone"),
     
-    public static final String STANDALONE_MODE = "Standalone";
+    CLUSTER("Cluster");
     
-    public static final int MAX_CONTAINER_QUANTITY = 7;
+    private final String value;
 }
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/DockerStorageContainer.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/DockerStorageContainer.java
index 9f813419dc6..ff4de0e4364 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/DockerStorageContainer.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/DockerStorageContainer.java
@@ -48,7 +48,6 @@ import java.util.Optional;
 @Slf4j
 public abstract class DockerStorageContainer extends DockerITContainer implements StorageContainer {
     
-    @Getter
     private final DatabaseType databaseType;
     
     @Getter(AccessLevel.NONE)
@@ -86,7 +85,6 @@ public abstract class DockerStorageContainer extends DockerITContainer implement
     
     protected final void setCommands(final String command) {
         if (Strings.isNullOrEmpty(command)) {
-            log.info("command is blank, not set");
             return;
         }
         setCommand(command);
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/mysql/MySQLContainerConfigurationFactory.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/mysql/MySQLContainerConfigurationFactory.java
index 36a0e8938b3..6f76b0c43a2 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/mysql/MySQLContainerConfigurationFactory.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/mysql/MySQLContainerConfigurationFactory.java
@@ -19,9 +19,9 @@ package org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.i
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.util.ContainerUtil;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.MySQLContainer;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.util.ContainerUtil;
 
 import java.util.Collections;
 import java.util.HashMap;
@@ -69,6 +69,6 @@ public final class MySQLContainerConfigurationFactory {
     }
     
     private static Map<String, String> getMountedResources() {
-        return Collections.singletonMap("/env/mysql/my.cnf", StorageContainerConstants.MYSQL_CONF_IN_CONTAINER);
+        return Collections.singletonMap("/env/mysql/my.cnf", MySQLContainer.MYSQL_CONF_IN_CONTAINER);
     }
 }
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/opengauss/OpenGaussContainerConfigurationFactory.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/opengauss/OpenGaussContainerConfigurationFactory.java
index 3f2995d9441..223382e5303 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/opengauss/OpenGaussContainerConfigurationFactory.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/opengauss/OpenGaussContainerConfigurationFactory.java
@@ -21,6 +21,7 @@ import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.OpenGaussContainer;
 
 import java.util.Collections;
 import java.util.HashMap;
@@ -51,8 +52,8 @@ public final class OpenGaussContainerConfigurationFactory {
     
     private static Map<String, String> getMountedResources() {
         Map<String, String> result = new HashMap<>(2, 1);
-        result.put("/env/postgresql/postgresql.conf", StorageContainerConstants.OPENGAUSS_CONF_IN_CONTAINER);
-        result.put("/env/opengauss/pg_hba.conf", StorageContainerConstants.OPENGAUSS_HBA_IN_CONF_CONTAINER);
+        result.put("/env/postgresql/postgresql.conf", OpenGaussContainer.OPENGAUSS_CONF_IN_CONTAINER);
+        result.put("/env/opengauss/pg_hba.conf", OpenGaussContainer.OPENGAUSS_HBA_IN_CONF_CONTAINER);
         return result;
     }
 }
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/postgresql/PostgreSQLContainerConfigurationFactory.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/postgresql/PostgreSQLContainerConfigurationFactory.java
index eb7db17c62c..4332c1da0fb 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/postgresql/PostgreSQLContainerConfigurationFactory.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/config/impl/postgresql/PostgreSQLContainerConfigurationFactory.java
@@ -21,6 +21,7 @@ import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.PostgreSQLContainer;
 
 import java.util.Collections;
 import java.util.Map;
@@ -41,7 +42,7 @@ public final class PostgreSQLContainerConfigurationFactory {
     }
     
     private static String getCommand() {
-        return "-c config_file=" + StorageContainerConstants.POSTGRESQL_CONF_IN_CONTAINER;
+        return "-c config_file=" + PostgreSQLContainer.POSTGRESQL_CONF_IN_CONTAINER;
     }
     
     private static Map<String, String> getContainerEnvironments() {
@@ -49,6 +50,6 @@ public final class PostgreSQLContainerConfigurationFactory {
     }
     
     private static Map<String, String> getMountedResources() {
-        return Collections.singletonMap("/env/postgresql/postgresql.conf", StorageContainerConstants.POSTGRESQL_CONF_IN_CONTAINER);
+        return Collections.singletonMap("/env/postgresql/postgresql.conf", PostgreSQLContainer.POSTGRESQL_CONF_IN_CONTAINER);
     }
 }
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/MySQLContainer.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/MySQLContainer.java
index c149f9cf059..ad9f9197ed2 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/MySQLContainer.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/MySQLContainer.java
@@ -20,7 +20,6 @@ package org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl;
 import com.google.common.base.Strings;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPIRegistry;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.DockerStorageContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
 
@@ -31,6 +30,10 @@ import java.util.Optional;
  */
 public final class MySQLContainer extends DockerStorageContainer {
     
+    public static final int MYSQL_EXPOSED_PORT = 3306;
+    
+    public static final String MYSQL_CONF_IN_CONTAINER = "/etc/mysql/my.cnf";
+    
     private final StorageContainerConfiguration storageContainerConfig;
     
     public MySQLContainer(final String containerImage, final String scenario, final StorageContainerConfiguration storageContainerConfig) {
@@ -48,12 +51,12 @@ public final class MySQLContainer extends DockerStorageContainer {
     
     @Override
     public int getExposedPort() {
-        return StorageContainerConstants.MYSQL_EXPOSED_PORT;
+        return MYSQL_EXPOSED_PORT;
     }
     
     @Override
     public int getMappedPort() {
-        return getMappedPort(StorageContainerConstants.MYSQL_EXPOSED_PORT);
+        return getMappedPort(MYSQL_EXPOSED_PORT);
     }
     
     @Override
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/OpenGaussContainer.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/OpenGaussContainer.java
index 79b3e540821..2cda691f08a 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/OpenGaussContainer.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/OpenGaussContainer.java
@@ -34,6 +34,12 @@ import java.util.Optional;
  */
 public final class OpenGaussContainer extends DockerStorageContainer {
     
+    public static final int OPENGAUSS_EXPOSED_PORT = 5432;
+    
+    public static final String OPENGAUSS_CONF_IN_CONTAINER = "/usr/local/opengauss/share/postgresql/postgresql.conf.sample";
+    
+    public static final String OPENGAUSS_HBA_IN_CONF_CONTAINER = "/usr/local/opengauss/share/postgresql/pg_hba.conf.sample";
+    
     private final StorageContainerConfiguration storageContainerConfig;
     
     public OpenGaussContainer(final String containerImage, final String scenario, final StorageContainerConfiguration storageContainerConfig) {
@@ -53,12 +59,12 @@ public final class OpenGaussContainer extends DockerStorageContainer {
     
     @Override
     public int getExposedPort() {
-        return StorageContainerConstants.OPENGAUSS_EXPOSED_PORT;
+        return OPENGAUSS_EXPOSED_PORT;
     }
     
     @Override
     public int getMappedPort() {
-        return getMappedPort(StorageContainerConstants.OPENGAUSS_EXPOSED_PORT);
+        return getMappedPort(OPENGAUSS_EXPOSED_PORT);
     }
     
     @Override
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/PostgreSQLContainer.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/PostgreSQLContainer.java
index 4140a40448f..2f7a2a0227e 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/PostgreSQLContainer.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/atomic/storage/impl/PostgreSQLContainer.java
@@ -20,7 +20,6 @@ package org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl;
 import com.google.common.base.Strings;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPIRegistry;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.DockerStorageContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
 
@@ -31,6 +30,10 @@ import java.util.Optional;
  */
 public final class PostgreSQLContainer extends DockerStorageContainer {
     
+    public static final int POSTGRESQL_EXPOSED_PORT = 5432;
+    
+    public static final String POSTGRESQL_CONF_IN_CONTAINER = "/etc/postgresql/postgresql.conf";
+    
     private final StorageContainerConfiguration storageContainerConfig;
     
     public PostgreSQLContainer(final String containerImage, final String scenario, final StorageContainerConfiguration storageContainerConfig) {
@@ -48,12 +51,12 @@ public final class PostgreSQLContainer extends DockerStorageContainer {
     
     @Override
     public int getExposedPort() {
-        return StorageContainerConstants.POSTGRESQL_EXPOSED_PORT;
+        return POSTGRESQL_EXPOSED_PORT;
     }
     
     @Override
     public int getMappedPort() {
-        return getMappedPort(StorageContainerConstants.POSTGRESQL_EXPOSED_PORT);
+        return getMappedPort(POSTGRESQL_EXPOSED_PORT);
     }
     
     @Override
diff --git a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/wait/JdbcConnectionWaitStrategy.java b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/wait/JdbcConnectionWaitStrategy.java
index 5390e4c7438..4151a07654f 100644
--- a/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/wait/JdbcConnectionWaitStrategy.java
+++ b/test/e2e/env/src/test/java/org/apache/shardingsphere/test/e2e/env/container/wait/JdbcConnectionWaitStrategy.java
@@ -40,7 +40,7 @@ public final class JdbcConnectionWaitStrategy extends AbstractWaitStrategy {
         Unreliables.retryUntilSuccess((int) startupTimeout.getSeconds(), TimeUnit.SECONDS, () -> {
             getRateLimiter().doWhenReady(() -> {
                 try (Connection ignored = connectionSupplier.call()) {
-                    log.info("Container ready");
+                    log.info("Container ready.");
                     // CHECKSTYLE:OFF
                 } catch (final Exception ex) {
                     // CHECKSTYLE:ON
diff --git a/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/cases/createtable/CreateTableSQLGeneratorIT.java b/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/cases/createtable/CreateTableSQLGeneratorIT.java
index 521e924e116..7a23c5ad590 100644
--- a/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/cases/createtable/CreateTableSQLGeneratorIT.java
+++ b/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/cases/createtable/CreateTableSQLGeneratorIT.java
@@ -31,12 +31,12 @@ import org.apache.shardingsphere.test.e2e.data.pipeline.env.PipelineE2EEnvironme
 import org.apache.shardingsphere.test.e2e.data.pipeline.env.enums.PipelineEnvTypeEnum;
 import org.apache.shardingsphere.test.e2e.data.pipeline.framework.param.PipelineTestParameter;
 import org.apache.shardingsphere.test.e2e.data.pipeline.util.DockerImageVersion;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.DockerStorageContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.StorageContainerFactory;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.impl.StorageContainerConfigurationFactory;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.impl.mysql.MySQLContainerConfigurationFactory;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.MySQLContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.util.DatabaseTypeUtil;
 import org.junit.After;
 import org.junit.Test;
@@ -94,7 +94,7 @@ public final class CreateTableSQLGeneratorIT {
         StorageContainerConfiguration storageContainerConfig;
         if (DatabaseTypeUtil.isMySQL(databaseType)) {
             int majorVersion = new DockerImageVersion(testParam.getStorageContainerImage()).getMajorVersion();
-            Map<String, String> mountedResources = Collections.singletonMap(String.format("/env/mysql/mysql%s/my.cnf", majorVersion), StorageContainerConstants.MYSQL_CONF_IN_CONTAINER);
+            Map<String, String> mountedResources = Collections.singletonMap(String.format("/env/mysql/mysql%s/my.cnf", majorVersion), MySQLContainer.MYSQL_CONF_IN_CONTAINER);
             storageContainerConfig = MySQLContainerConfigurationFactory.newInstance(null, null, mountedResources);
         } else {
             storageContainerConfig = StorageContainerConfigurationFactory.newInstance(databaseType);
diff --git a/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/env/PipelineE2EEnvironment.java b/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/env/PipelineE2EEnvironment.java
index cf827b22e60..d2d08a18596 100644
--- a/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/env/PipelineE2EEnvironment.java
+++ b/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/env/PipelineE2EEnvironment.java
@@ -22,7 +22,9 @@ import lombok.Getter;
 import lombok.SneakyThrows;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.test.e2e.data.pipeline.env.enums.PipelineEnvTypeEnum;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.MySQLContainer;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.OpenGaussContainer;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.PostgreSQLContainer;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -95,11 +97,11 @@ public final class PipelineE2EEnvironment {
     public int getActualDataSourceDefaultPort(final DatabaseType databaseType) {
         switch (databaseType.getType()) {
             case "MySQL":
-                return Integer.parseInt(props.getOrDefault("pipeline.it.native.mysql.port", StorageContainerConstants.MYSQL_EXPOSED_PORT).toString());
+                return Integer.parseInt(props.getOrDefault("pipeline.it.native.mysql.port", MySQLContainer.MYSQL_EXPOSED_PORT).toString());
             case "PostgreSQL":
-                return Integer.parseInt(props.getOrDefault("pipeline.it.native.postgresql.port", StorageContainerConstants.POSTGRESQL_EXPOSED_PORT).toString());
+                return Integer.parseInt(props.getOrDefault("pipeline.it.native.postgresql.port", PostgreSQLContainer.POSTGRESQL_EXPOSED_PORT).toString());
             case "openGauss":
-                return Integer.parseInt(props.getOrDefault("pipeline.it.native.opengauss.port", StorageContainerConstants.OPENGAUSS_EXPOSED_PORT).toString());
+                return Integer.parseInt(props.getOrDefault("pipeline.it.native.opengauss.port", OpenGaussContainer.OPENGAUSS_EXPOSED_PORT).toString());
             default:
                 throw new IllegalArgumentException("Unsupported database type: " + databaseType.getType());
         }
diff --git a/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/framework/container/compose/DockerContainerComposer.java b/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/framework/container/compose/DockerContainerComposer.java
index a70bb92389e..51e6c867f7a 100644
--- a/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/framework/container/compose/DockerContainerComposer.java
+++ b/test/e2e/pipeline/src/test/java/org/apache/shardingsphere/test/e2e/data/pipeline/framework/container/compose/DockerContainerComposer.java
@@ -24,9 +24,8 @@ import org.apache.shardingsphere.test.e2e.data.pipeline.util.DockerImageVersion;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.adapter.AdapterContainerFactory;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.adapter.config.AdaptorContainerConfiguration;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.adapter.impl.ShardingSphereProxyClusterContainer;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.EnvironmentConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterContainerEnum;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterModeEnum;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.governance.GovernanceContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.governance.impl.ZookeeperContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.DockerStorageContainer;
@@ -34,6 +33,7 @@ import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.StorageCo
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.impl.StorageContainerConfigurationFactory;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.impl.mysql.MySQLContainerConfigurationFactory;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.MySQLContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.util.DatabaseTypeUtil;
 import org.apache.shardingsphere.test.e2e.env.runtime.DataSourceEnvironment;
 
@@ -68,7 +68,7 @@ public final class DockerContainerComposer extends BaseContainerComposer {
             StorageContainerConfiguration storageContainerConfig;
             if (DatabaseTypeUtil.isMySQL(databaseType)) {
                 int majorVersion = new DockerImageVersion(storageContainerImage).getMajorVersion();
-                Map<String, String> mountedResources = Collections.singletonMap(String.format("/env/mysql/mysql%s/my.cnf", majorVersion), StorageContainerConstants.MYSQL_CONF_IN_CONTAINER);
+                Map<String, String> mountedResources = Collections.singletonMap(String.format("/env/mysql/mysql%s/my.cnf", majorVersion), MySQLContainer.MYSQL_CONF_IN_CONTAINER);
                 storageContainerConfig = MySQLContainerConfigurationFactory.newInstance(null, null, mountedResources);
             } else {
                 storageContainerConfig = StorageContainerConfigurationFactory.newInstance(databaseType);
@@ -79,8 +79,8 @@ public final class DockerContainerComposer extends BaseContainerComposer {
             storageContainers.add(storageContainer);
         }
         AdaptorContainerConfiguration containerConfig = PipelineProxyClusterContainerConfigurationFactory.newInstance(databaseType, storageContainerImage);
-        ShardingSphereProxyClusterContainer proxyClusterContainer = (ShardingSphereProxyClusterContainer) AdapterContainerFactory.newInstance(EnvironmentConstants.CLUSTER_MODE,
-                AdapterContainerConstants.PROXY, databaseType, null, "", containerConfig);
+        ShardingSphereProxyClusterContainer proxyClusterContainer = (ShardingSphereProxyClusterContainer) AdapterContainerFactory.newInstance(AdapterModeEnum.CLUSTER.getValue(),
+                AdapterContainerEnum.PROXY.getValue(), databaseType, null, "", containerConfig);
         for (DockerStorageContainer each : storageContainers) {
             proxyClusterContainer.dependsOn(governanceContainer, each);
         }
diff --git a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/container/compose/ContainerComposerRegistry.java b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/container/compose/ContainerComposerRegistry.java
index e19d63f8a7a..b0ba080c6b2 100644
--- a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/container/compose/ContainerComposerRegistry.java
+++ b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/container/compose/ContainerComposerRegistry.java
@@ -21,8 +21,8 @@ import com.google.common.base.Preconditions;
 import lombok.SneakyThrows;
 import org.apache.shardingsphere.test.e2e.container.compose.mode.ClusterContainerComposer;
 import org.apache.shardingsphere.test.e2e.container.compose.mode.StandaloneContainerComposer;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.EnvironmentConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterContainerEnum;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterModeEnum;
 import org.apache.shardingsphere.test.e2e.framework.param.model.E2ETestParameter;
 
 import javax.sql.DataSource;
@@ -34,7 +34,7 @@ import java.util.Map;
  */
 public final class ContainerComposerRegistry implements AutoCloseable {
     
-    private final Map<String, ContainerComposer> containerComposers = new HashMap<>(EnvironmentConstants.MAX_CONTAINER_QUANTITY, 1);
+    private final Map<String, ContainerComposer> containerComposers = new HashMap<>(7, 1);
     
     /**
      * Get container composer.
@@ -61,7 +61,7 @@ public final class ContainerComposerRegistry implements AutoCloseable {
     
     private boolean isClusterMode(final E2ETestParameter testParam) {
         // TODO cluster mode often throw exception sometimes, issue is #15517
-        return EnvironmentConstants.CLUSTER_MODE.equalsIgnoreCase(testParam.getMode()) && AdapterContainerConstants.PROXY.equalsIgnoreCase(testParam.getAdapter());
+        return AdapterModeEnum.CLUSTER.getValue().equalsIgnoreCase(testParam.getMode()) && AdapterContainerEnum.PROXY.getValue().equalsIgnoreCase(testParam.getAdapter());
     }
     
     @Override
diff --git a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/engine/TotalSuitesCountCalculator.java b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/engine/TotalSuitesCountCalculator.java
index 7ef7617271e..0065aeacb52 100644
--- a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/engine/TotalSuitesCountCalculator.java
+++ b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/engine/TotalSuitesCountCalculator.java
@@ -19,8 +19,8 @@ package org.apache.shardingsphere.test.e2e.engine;
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.EnvironmentConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterContainerEnum;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterModeEnum;
 import org.apache.shardingsphere.test.e2e.env.runtime.IntegrationTestEnvironment;
 
 /**
@@ -62,10 +62,10 @@ public final class TotalSuitesCountCalculator {
     }
     
     private static boolean isRunDCL() {
-        return ENV.getRunModes().contains(EnvironmentConstants.CLUSTER_MODE);
+        return ENV.getRunModes().contains(AdapterModeEnum.CLUSTER.getValue());
     }
     
     private static boolean isRunProxy() {
-        return ENV.getRunModes().contains(EnvironmentConstants.CLUSTER_MODE) && ENV.getClusterEnvironment().getAdapters().contains(AdapterContainerConstants.PROXY);
+        return ENV.getRunModes().contains(AdapterModeEnum.CLUSTER.getValue()) && ENV.getClusterEnvironment().getAdapters().contains(AdapterContainerEnum.PROXY.getValue());
     }
 }
diff --git a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/ClusterTestParameterArrayGenerator.java b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/ClusterTestParameterArrayGenerator.java
index 1d31e74360d..6fae4d395df 100644
--- a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/ClusterTestParameterArrayGenerator.java
+++ b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/ClusterTestParameterArrayGenerator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.test.e2e.framework.param.array;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.test.e2e.cases.SQLCommandType;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.EnvironmentConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterModeEnum;
 import org.apache.shardingsphere.test.e2e.env.runtime.IntegrationTestEnvironment;
 import org.apache.shardingsphere.test.e2e.framework.param.model.AssertionTestParameter;
 import org.apache.shardingsphere.test.e2e.framework.param.model.E2ETestParameter;
@@ -42,7 +42,7 @@ public final class ClusterTestParameterArrayGenerator {
      * @return assertion test parameter
      */
     public static Collection<AssertionTestParameter> getAssertionTestParameter(final SQLCommandType sqlCommandType) {
-        return new E2ETestParameterGenerator(ENV.getClusterEnvironment().getAdapters(), ENV.getScenarios(), EnvironmentConstants.CLUSTER_MODE,
+        return new E2ETestParameterGenerator(ENV.getClusterEnvironment().getAdapters(), ENV.getScenarios(), AdapterModeEnum.CLUSTER.getValue(),
                 ENV.getClusterEnvironment().getDatabaseTypes()).getAssertionTestParameter(sqlCommandType);
     }
     
@@ -53,7 +53,7 @@ public final class ClusterTestParameterArrayGenerator {
      * @return case parameter
      */
     public static Collection<E2ETestParameter> getCaseTestParameter(final SQLCommandType sqlCommandType) {
-        return new E2ETestParameterGenerator(ENV.getClusterEnvironment().getAdapters(), ENV.getScenarios(), EnvironmentConstants.CLUSTER_MODE,
+        return new E2ETestParameterGenerator(ENV.getClusterEnvironment().getAdapters(), ENV.getScenarios(), AdapterModeEnum.CLUSTER.getValue(),
                 ENV.getClusterEnvironment().getDatabaseTypes()).getCaseTestParameter(sqlCommandType);
     }
 }
diff --git a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/E2ETestParameterFactory.java b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/E2ETestParameterFactory.java
index d2b1b45e478..6b90a168045 100644
--- a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/E2ETestParameterFactory.java
+++ b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/E2ETestParameterFactory.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.test.e2e.framework.param.array;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.test.e2e.cases.SQLCommandType;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.EnvironmentConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterModeEnum;
 import org.apache.shardingsphere.test.e2e.env.runtime.IntegrationTestEnvironment;
 import org.apache.shardingsphere.test.e2e.framework.param.model.AssertionTestParameter;
 import org.apache.shardingsphere.test.e2e.framework.param.model.E2ETestParameter;
@@ -45,11 +45,11 @@ public final class E2ETestParameterFactory {
     public static Collection<AssertionTestParameter> getAssertionTestParameters(final SQLCommandType sqlCommandType) {
         Collection<AssertionTestParameter> result = new LinkedList<>();
         for (String each : ENV.getRunModes()) {
-            if (EnvironmentConstants.STANDALONE_MODE.equalsIgnoreCase(each)) {
+            if (AdapterModeEnum.STANDALONE.getValue().equalsIgnoreCase(each)) {
                 result.addAll(isDistSQLCommandType(sqlCommandType)
                         ? ProxyStandaloneTestParameterGenerator.getAssertionTestParameter(sqlCommandType)
                         : JdbcStandaloneTestParameterGenerator.getAssertionTestParameter(sqlCommandType));
-            } else if (EnvironmentConstants.CLUSTER_MODE.equalsIgnoreCase(each)) {
+            } else if (AdapterModeEnum.CLUSTER.getValue().equalsIgnoreCase(each)) {
                 result.addAll(ClusterTestParameterArrayGenerator.getAssertionTestParameter(sqlCommandType));
             }
         }
@@ -65,11 +65,11 @@ public final class E2ETestParameterFactory {
     public static Collection<E2ETestParameter> getCaseTestParameters(final SQLCommandType sqlCommandType) {
         Collection<E2ETestParameter> result = new LinkedList<>();
         for (String each : ENV.getRunModes()) {
-            if (EnvironmentConstants.STANDALONE_MODE.equalsIgnoreCase(each)) {
+            if (AdapterModeEnum.STANDALONE.getValue().equalsIgnoreCase(each)) {
                 result.addAll(isDistSQLCommandType(sqlCommandType)
                         ? ProxyStandaloneTestParameterGenerator.getCaseTestParameter(sqlCommandType)
                         : JdbcStandaloneTestParameterGenerator.getCaseTestParameter(sqlCommandType));
-            } else if (EnvironmentConstants.CLUSTER_MODE.equalsIgnoreCase(each)) {
+            } else if (AdapterModeEnum.CLUSTER.getValue().equalsIgnoreCase(each)) {
                 result.addAll(ClusterTestParameterArrayGenerator.getCaseTestParameter(sqlCommandType));
             }
         }
diff --git a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/JdbcStandaloneTestParameterGenerator.java b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/JdbcStandaloneTestParameterGenerator.java
index 7fc3f83f6c1..4c6da41322e 100644
--- a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/JdbcStandaloneTestParameterGenerator.java
+++ b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/JdbcStandaloneTestParameterGenerator.java
@@ -22,8 +22,8 @@ import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPIRegistry;
 import org.apache.shardingsphere.test.e2e.cases.SQLCommandType;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.EnvironmentConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterContainerEnum;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterModeEnum;
 import org.apache.shardingsphere.test.e2e.env.runtime.IntegrationTestEnvironment;
 import org.apache.shardingsphere.test.e2e.framework.param.model.AssertionTestParameter;
 import org.apache.shardingsphere.test.e2e.framework.param.model.E2ETestParameter;
@@ -37,7 +37,7 @@ import java.util.Collections;
 @NoArgsConstructor(access = AccessLevel.PRIVATE)
 public final class JdbcStandaloneTestParameterGenerator {
     
-    private static final Collection<String> ADAPTERS = Collections.singleton(AdapterContainerConstants.JDBC);
+    private static final Collection<String> ADAPTERS = Collections.singleton(AdapterContainerEnum.JDBC.getValue());
     
     private static final Collection<DatabaseType> DATABASE_TYPES = Collections.singleton(TypedSPIRegistry.getRegisteredService(DatabaseType.class, "H2"));
     
@@ -50,7 +50,7 @@ public final class JdbcStandaloneTestParameterGenerator {
      * @return assertion test parameter
      */
     public static Collection<AssertionTestParameter> getAssertionTestParameter(final SQLCommandType sqlCommandType) {
-        return new E2ETestParameterGenerator(ADAPTERS, ENV.getScenarios(), EnvironmentConstants.STANDALONE_MODE, DATABASE_TYPES).getAssertionTestParameter(sqlCommandType);
+        return new E2ETestParameterGenerator(ADAPTERS, ENV.getScenarios(), AdapterModeEnum.STANDALONE.getValue(), DATABASE_TYPES).getAssertionTestParameter(sqlCommandType);
     }
     
     /**
@@ -60,6 +60,6 @@ public final class JdbcStandaloneTestParameterGenerator {
      * @return case test parameter
      */
     public static Collection<E2ETestParameter> getCaseTestParameter(final SQLCommandType sqlCommandType) {
-        return new E2ETestParameterGenerator(ADAPTERS, ENV.getScenarios(), EnvironmentConstants.STANDALONE_MODE, DATABASE_TYPES).getCaseTestParameter(sqlCommandType);
+        return new E2ETestParameterGenerator(ADAPTERS, ENV.getScenarios(), AdapterModeEnum.STANDALONE.getValue(), DATABASE_TYPES).getCaseTestParameter(sqlCommandType);
     }
 }
diff --git a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/ProxyStandaloneTestParameterGenerator.java b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/ProxyStandaloneTestParameterGenerator.java
index 24f6ef9352e..e9ba806851d 100644
--- a/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/ProxyStandaloneTestParameterGenerator.java
+++ b/test/e2e/suite/src/test/java/org/apache/shardingsphere/test/e2e/framework/param/array/ProxyStandaloneTestParameterGenerator.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.test.e2e.framework.param.array;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.test.e2e.cases.SQLCommandType;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.EnvironmentConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterModeEnum;
 import org.apache.shardingsphere.test.e2e.env.runtime.IntegrationTestEnvironment;
 import org.apache.shardingsphere.test.e2e.framework.param.model.AssertionTestParameter;
 import org.apache.shardingsphere.test.e2e.framework.param.model.E2ETestParameter;
@@ -43,7 +43,7 @@ public final class ProxyStandaloneTestParameterGenerator {
      */
     public static Collection<AssertionTestParameter> getAssertionTestParameter(final SQLCommandType sqlCommandType) {
         return new E2ETestParameterGenerator(ENV.getClusterEnvironment().getAdapters(),
-                ENV.getScenarios(), EnvironmentConstants.STANDALONE_MODE, ENV.getClusterEnvironment().getDatabaseTypes()).getAssertionTestParameter(sqlCommandType);
+                ENV.getScenarios(), AdapterModeEnum.STANDALONE.getValue(), ENV.getClusterEnvironment().getDatabaseTypes()).getAssertionTestParameter(sqlCommandType);
     }
     
     /**
@@ -54,6 +54,6 @@ public final class ProxyStandaloneTestParameterGenerator {
      */
     public static Collection<E2ETestParameter> getCaseTestParameter(final SQLCommandType sqlCommandType) {
         return new E2ETestParameterGenerator(ENV.getClusterEnvironment().getAdapters(),
-                ENV.getScenarios(), EnvironmentConstants.STANDALONE_MODE, ENV.getClusterEnvironment().getDatabaseTypes()).getCaseTestParameter(sqlCommandType);
+                ENV.getScenarios(), AdapterModeEnum.STANDALONE.getValue(), ENV.getClusterEnvironment().getDatabaseTypes()).getCaseTestParameter(sqlCommandType);
     }
 }
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/alterresource/AddResourceTestCase.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/alterresource/AddResourceTestCase.java
index f77dc8f7687..9ee31f9a806 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/alterresource/AddResourceTestCase.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/alterresource/AddResourceTestCase.java
@@ -21,7 +21,6 @@ import org.apache.shardingsphere.test.e2e.transaction.cases.base.BaseTransaction
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionBaseE2EIT;
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionTestCase;
 import org.apache.shardingsphere.test.e2e.transaction.engine.constants.TransactionTestConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
 
 import javax.sql.DataSource;
 import java.sql.Connection;
@@ -33,7 +32,7 @@ import static org.hamcrest.MatcherAssert.assertThat;
 /**
  * Integration test of add resource.
  */
-@TransactionTestCase(adapters = AdapterContainerConstants.PROXY, scenario = "addResource")
+@TransactionTestCase(adapters = TransactionTestConstants.PROXY, scenario = "addResource")
 public final class AddResourceTestCase extends BaseTransactionTestCase {
     
     public AddResourceTestCase(final TransactionBaseE2EIT baseTransactionITCase, final DataSource dataSource) {
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/alterresource/CloseResourceTestCase.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/alterresource/CloseResourceTestCase.java
index c16ddac1780..c33964df6a4 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/alterresource/CloseResourceTestCase.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/alterresource/CloseResourceTestCase.java
@@ -22,7 +22,6 @@ import org.apache.shardingsphere.test.e2e.transaction.cases.base.BaseTransaction
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionBaseE2EIT;
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionTestCase;
 import org.apache.shardingsphere.test.e2e.transaction.engine.constants.TransactionTestConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
 
 import javax.sql.DataSource;
 import java.sql.Connection;
@@ -31,7 +30,7 @@ import java.sql.SQLException;
 /**
  * Integration test of close resource.
  */
-@TransactionTestCase(adapters = AdapterContainerConstants.PROXY, scenario = "closeResource")
+@TransactionTestCase(adapters = TransactionTestConstants.PROXY, scenario = "closeResource")
 @Slf4j
 public final class CloseResourceTestCase extends BaseTransactionTestCase {
     
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/cursor/OpenGaussCursorTestCase.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/cursor/OpenGaussCursorTestCase.java
index 6af1fd11232..8d83269c34a 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/cursor/OpenGaussCursorTestCase.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/cursor/OpenGaussCursorTestCase.java
@@ -24,7 +24,6 @@ import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionBas
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionTestCase;
 import org.apache.shardingsphere.test.e2e.transaction.engine.command.CursorSQLCommand;
 import org.apache.shardingsphere.test.e2e.transaction.engine.constants.TransactionTestConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
 
 import javax.sql.DataSource;
 import javax.xml.bind.JAXB;
@@ -41,7 +40,7 @@ import static org.junit.Assert.fail;
 /**
  * OpenGauss cursor transaction integration test.
  */
-@TransactionTestCase(dbTypes = {TransactionTestConstants.OPENGAUSS}, adapters = {AdapterContainerConstants.PROXY}, scenario = "cursor")
+@TransactionTestCase(dbTypes = {TransactionTestConstants.OPENGAUSS}, adapters = TransactionTestConstants.PROXY, scenario = "cursor")
 @Slf4j
 public final class OpenGaussCursorTestCase extends BaseTransactionTestCase {
     
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/nested/NestedTransactionTestCase.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/nested/NestedTransactionTestCase.java
index 6979fcc2ed2..f5bc2c10b69 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/nested/NestedTransactionTestCase.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/nested/NestedTransactionTestCase.java
@@ -18,10 +18,10 @@
 package org.apache.shardingsphere.test.e2e.transaction.cases.nested;
 
 import org.apache.shardingsphere.driver.jdbc.core.connection.ShardingSphereConnection;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
 import org.apache.shardingsphere.test.e2e.transaction.cases.base.BaseTransactionTestCase;
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionBaseE2EIT;
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionTestCase;
+import org.apache.shardingsphere.test.e2e.transaction.engine.constants.TransactionTestConstants;
 import org.apache.shardingsphere.transaction.api.TransactionType;
 
 import javax.sql.DataSource;
@@ -33,7 +33,7 @@ import static org.junit.Assert.assertTrue;
 /**
  * Nested transaction test case.
  */
-@TransactionTestCase(transactionTypes = TransactionType.LOCAL, adapters = AdapterContainerConstants.JDBC)
+@TransactionTestCase(transactionTypes = TransactionType.LOCAL, adapters = TransactionTestConstants.JDBC)
 public class NestedTransactionTestCase extends BaseTransactionTestCase {
     
     public NestedTransactionTestCase(final TransactionBaseE2EIT baseTransactionITCase, final DataSource dataSource) {
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/truncate/MySQLXATruncateTestCase.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/truncate/MySQLXATruncateTestCase.java
index 383e324848a..10b806fc8d1 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/truncate/MySQLXATruncateTestCase.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/cases/truncate/MySQLXATruncateTestCase.java
@@ -23,7 +23,6 @@ import org.apache.shardingsphere.test.e2e.transaction.cases.base.BaseTransaction
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionBaseE2EIT;
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionTestCase;
 import org.apache.shardingsphere.test.e2e.transaction.engine.constants.TransactionTestConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
 import org.apache.shardingsphere.transaction.api.TransactionType;
 
 import javax.sql.DataSource;
@@ -35,7 +34,7 @@ import static org.junit.Assert.fail;
 /**
  * MySQL truncate XA transaction integration test.
  */
-@TransactionTestCase(dbTypes = {TransactionTestConstants.MYSQL}, adapters = {AdapterContainerConstants.PROXY}, transactionTypes = {TransactionType.XA})
+@TransactionTestCase(dbTypes = {TransactionTestConstants.MYSQL}, adapters = TransactionTestConstants.PROXY, transactionTypes = {TransactionType.XA})
 @Slf4j
 public final class MySQLXATruncateTestCase extends BaseTransactionTestCase {
     
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/base/BaseE2EIT.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/base/BaseE2EIT.java
index 3ef727fecc5..55d6e802991 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/base/BaseE2EIT.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/base/BaseE2EIT.java
@@ -27,6 +27,10 @@ import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
 import org.apache.shardingsphere.infra.database.type.dialect.OpenGaussDatabaseType;
 import org.apache.shardingsphere.infra.database.type.dialect.PostgreSQLDatabaseType;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterContainerEnum;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.DockerStorageContainer;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.util.StorageContainerUtil;
+import org.apache.shardingsphere.test.e2e.env.runtime.DataSourceEnvironment;
 import org.apache.shardingsphere.test.e2e.transaction.cases.base.BaseTransactionTestCase;
 import org.apache.shardingsphere.test.e2e.transaction.engine.command.CommonSQLCommand;
 import org.apache.shardingsphere.test.e2e.transaction.engine.constants.TransactionTestConstants;
@@ -38,10 +42,6 @@ import org.apache.shardingsphere.test.e2e.transaction.framework.container.compos
 import org.apache.shardingsphere.test.e2e.transaction.framework.container.compose.NativeContainerComposer;
 import org.apache.shardingsphere.test.e2e.transaction.framework.param.TransactionTestParameter;
 import org.apache.shardingsphere.test.e2e.transaction.util.TestCaseClassScanner;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.DockerStorageContainer;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.util.StorageContainerUtil;
-import org.apache.shardingsphere.test.e2e.env.runtime.DataSourceEnvironment;
 import org.apache.shardingsphere.transaction.api.TransactionType;
 
 import javax.sql.DataSource;
@@ -122,7 +122,7 @@ public abstract class BaseE2EIT {
     }
     
     final boolean isProxyAdapter(final TransactionTestParameter testParam) {
-        return AdapterContainerConstants.PROXY.equalsIgnoreCase(testParam.getAdapter());
+        return AdapterContainerEnum.PROXY.getValue().equalsIgnoreCase(testParam.getAdapter());
     }
     
     private ProxyDataSource createProxyDataSource() {
@@ -205,7 +205,7 @@ public abstract class BaseE2EIT {
     private static void addParametersByTransactionTypes(final String version, final TransactionTestCaseRegistry currentTestCaseInfo,
                                                         final Class<? extends BaseTransactionTestCase> caseClass, final TransactionTestCase annotation,
                                                         final Map<String, TransactionTestParameter> testParams, final String scenario) {
-        if (AdapterContainerConstants.PROXY.equals(currentTestCaseInfo.getRunningAdaptor())) {
+        if (AdapterContainerEnum.PROXY.getValue().equals(currentTestCaseInfo.getRunningAdaptor())) {
             List<TransactionType> allowTransactionTypes = ENV.getAllowTransactionTypes().isEmpty() ? Arrays.stream(TransactionType.values()).collect(Collectors.toList())
                     : ENV.getAllowTransactionTypes().stream().map(TransactionType::valueOf).collect(Collectors.toList());
             List<String> allowProviders = ENV.getAllowXAProviders().isEmpty() ? ALL_XA_PROVIDERS : ENV.getAllowXAProviders();
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/base/TransactionBaseE2EIT.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/base/TransactionBaseE2EIT.java
index b870d770781..bc69c51d397 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/base/TransactionBaseE2EIT.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/base/TransactionBaseE2EIT.java
@@ -19,10 +19,10 @@ package org.apache.shardingsphere.test.e2e.transaction.engine.base;
 
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shardingsphere.data.pipeline.core.util.ThreadUtil;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterContainerEnum;
 import org.apache.shardingsphere.test.e2e.transaction.cases.base.BaseTransactionTestCase;
 import org.apache.shardingsphere.test.e2e.transaction.engine.constants.TransactionTestConstants;
 import org.apache.shardingsphere.test.e2e.transaction.framework.param.TransactionTestParameter;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
 import org.apache.shardingsphere.transaction.api.TransactionType;
 
 import javax.sql.DataSource;
@@ -120,7 +120,7 @@ public abstract class TransactionBaseE2EIT extends BaseE2EIT {
     }
     
     protected void callTestCases(final TransactionTestParameter testParam) throws SQLException {
-        if (AdapterContainerConstants.PROXY.equalsIgnoreCase(testParam.getAdapter())) {
+        if (AdapterContainerEnum.PROXY.getValue().equalsIgnoreCase(testParam.getAdapter())) {
             for (TransactionType each : testParam.getTransactionTypes()) {
                 if (TransactionType.LOCAL.equals(each)) {
                     log.info("Call transaction IT {}, alter transaction rule {}.", testParam, "");
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/constants/TransactionTestConstants.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/constants/TransactionTestConstants.java
index 27e9c3a113d..4b72ea32399 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/constants/TransactionTestConstants.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/engine/constants/TransactionTestConstants.java
@@ -43,4 +43,8 @@ public final class TransactionTestConstants {
     public static final String NARAYANA = "Narayana";
     
     public static final String BITRONIX = "Bitronix";
+    
+    public static final String JDBC = "jdbc";
+    
+    public static final String PROXY = "proxy";
 }
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/env/TransactionE2EEnvironment.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/env/TransactionE2EEnvironment.java
index 15edbc8c9ef..22a47628980 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/env/TransactionE2EEnvironment.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/env/TransactionE2EEnvironment.java
@@ -21,10 +21,13 @@ import com.google.common.base.Strings;
 import lombok.Getter;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import org.apache.shardingsphere.test.e2e.transaction.env.enums.TransactionE2EEnvTypeEnum;
-import org.apache.shardingsphere.test.e2e.transaction.env.enums.TransactionTestCaseRegistry;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.ProxyContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.MySQLContainer;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.OpenGaussContainer;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.PostgreSQLContainer;
+import org.apache.shardingsphere.test.e2e.transaction.env.enums.TransactionE2EEnvTypeEnum;
+import org.apache.shardingsphere.test.e2e.transaction.env.enums.TransactionTestCaseRegistry;
 
 import java.io.IOException;
 import java.io.InputStream;
@@ -107,11 +110,11 @@ public final class TransactionE2EEnvironment {
     public int getActualDataSourceDefaultPort(final DatabaseType databaseType) {
         switch (databaseType.getType()) {
             case "MySQL":
-                return Integer.parseInt(props.getOrDefault("transaction.it.native.mysql.port", StorageContainerConstants.MYSQL_EXPOSED_PORT).toString());
+                return Integer.parseInt(props.getOrDefault("transaction.it.native.mysql.port", MySQLContainer.MYSQL_EXPOSED_PORT).toString());
             case "PostgreSQL":
-                return Integer.parseInt(props.getOrDefault("transaction.it.native.postgresql.port", StorageContainerConstants.POSTGRESQL_EXPOSED_PORT).toString());
+                return Integer.parseInt(props.getOrDefault("transaction.it.native.postgresql.port", PostgreSQLContainer.POSTGRESQL_EXPOSED_PORT).toString());
             case "openGauss":
-                return Integer.parseInt(props.getOrDefault("transaction.it.native.opengauss.port", StorageContainerConstants.OPENGAUSS_EXPOSED_PORT).toString());
+                return Integer.parseInt(props.getOrDefault("transaction.it.native.opengauss.port", OpenGaussContainer.OPENGAUSS_EXPOSED_PORT).toString());
             default:
                 throw new IllegalArgumentException("Unsupported database type: " + databaseType.getType());
         }
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/env/enums/TransactionTestCaseRegistry.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/env/enums/TransactionTestCaseRegistry.java
index 13d7b837627..b0c6062051b 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/env/enums/TransactionTestCaseRegistry.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/env/enums/TransactionTestCaseRegistry.java
@@ -19,6 +19,7 @@ package org.apache.shardingsphere.test.e2e.transaction.env.enums;
 
 import lombok.Getter;
 import lombok.RequiredArgsConstructor;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterContainerEnum;
 import org.apache.shardingsphere.test.e2e.transaction.engine.base.TransactionBaseE2EIT;
 import org.apache.shardingsphere.test.e2e.transaction.engine.constants.TransactionTestConstants;
 import org.apache.shardingsphere.test.e2e.transaction.engine.database.mysql.MySQLJdbcTransactionE2ETT;
@@ -27,23 +28,22 @@ import org.apache.shardingsphere.test.e2e.transaction.engine.database.opengauss.
 import org.apache.shardingsphere.test.e2e.transaction.engine.database.opengauss.OpenGaussProxyTransactionE2EIT;
 import org.apache.shardingsphere.test.e2e.transaction.engine.database.postgresql.PostgreSQLJdbcTransactionE2EIT;
 import org.apache.shardingsphere.test.e2e.transaction.engine.database.postgresql.PostgreSQLProxyTransactionE2EIT;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
 
 @RequiredArgsConstructor
 @Getter
 public enum TransactionTestCaseRegistry {
     
-    MySQL_JDBC_IT(MySQLJdbcTransactionE2ETT.class, TransactionTestConstants.MYSQL, AdapterContainerConstants.JDBC),
+    MySQL_JDBC_IT(MySQLJdbcTransactionE2ETT.class, TransactionTestConstants.MYSQL, AdapterContainerEnum.JDBC.getValue()),
     
-    MySQL_PROXY_IT(MySQLProxyTransactionE2EIT.class, TransactionTestConstants.MYSQL, AdapterContainerConstants.PROXY),
+    MySQL_PROXY_IT(MySQLProxyTransactionE2EIT.class, TransactionTestConstants.MYSQL, AdapterContainerEnum.PROXY.getValue()),
     
-    OPENGAUSS_JDBC_IT(OpenGaussJdbcTransactionE2EIT.class, TransactionTestConstants.OPENGAUSS, AdapterContainerConstants.JDBC),
+    OPENGAUSS_JDBC_IT(OpenGaussJdbcTransactionE2EIT.class, TransactionTestConstants.OPENGAUSS, AdapterContainerEnum.JDBC.getValue()),
     
-    OPENGAUSS_PROXY_IT(OpenGaussProxyTransactionE2EIT.class, TransactionTestConstants.OPENGAUSS, AdapterContainerConstants.PROXY),
+    OPENGAUSS_PROXY_IT(OpenGaussProxyTransactionE2EIT.class, TransactionTestConstants.OPENGAUSS, AdapterContainerEnum.PROXY.getValue()),
     
-    POSTGRESQL_JDBC_IT(PostgreSQLJdbcTransactionE2EIT.class, TransactionTestConstants.POSTGRESQL, AdapterContainerConstants.JDBC),
+    POSTGRESQL_JDBC_IT(PostgreSQLJdbcTransactionE2EIT.class, TransactionTestConstants.POSTGRESQL, AdapterContainerEnum.JDBC.getValue()),
     
-    POSTGRESQL_PROXY_IT(PostgreSQLProxyTransactionE2EIT.class, TransactionTestConstants.POSTGRESQL, AdapterContainerConstants.PROXY);
+    POSTGRESQL_PROXY_IT(PostgreSQLProxyTransactionE2EIT.class, TransactionTestConstants.POSTGRESQL, AdapterContainerEnum.PROXY.getValue());
     
     private final Class<? extends TransactionBaseE2EIT> testCaseClass;
     
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/compose/DockerContainerComposer.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/compose/DockerContainerComposer.java
index 9ce812ad18f..20bad2bc4b7 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/compose/DockerContainerComposer.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/compose/DockerContainerComposer.java
@@ -21,19 +21,19 @@ import com.google.common.base.Strings;
 import lombok.Getter;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import org.apache.shardingsphere.test.e2e.transaction.framework.container.config.StorageContainerConfigurationFactory;
-import org.apache.shardingsphere.test.e2e.transaction.framework.container.config.proxy.ProxyClusterContainerConfigurationFactory;
-import org.apache.shardingsphere.test.e2e.transaction.framework.container.jdbc.ShardingSphereJDBCContainer;
-import org.apache.shardingsphere.test.e2e.transaction.framework.param.TransactionTestParameter;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.adapter.AdapterContainerFactory;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.adapter.impl.ShardingSphereProxyClusterContainer;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.AdapterContainerConstants;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.EnvironmentConstants;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterContainerEnum;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.enums.AdapterModeEnum;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.governance.GovernanceContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.governance.impl.ZookeeperContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.DockerStorageContainer;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.StorageContainerFactory;
 import org.apache.shardingsphere.test.e2e.env.runtime.DataSourceEnvironment;
+import org.apache.shardingsphere.test.e2e.transaction.framework.container.config.StorageContainerConfigurationFactory;
+import org.apache.shardingsphere.test.e2e.transaction.framework.container.config.proxy.ProxyClusterContainerConfigurationFactory;
+import org.apache.shardingsphere.test.e2e.transaction.framework.container.jdbc.ShardingSphereJDBCContainer;
+import org.apache.shardingsphere.test.e2e.transaction.framework.param.TransactionTestParameter;
 
 import java.util.Objects;
 
@@ -60,9 +60,9 @@ public final class DockerContainerComposer extends BaseContainerComposer {
         governanceContainer = getContainers().registerContainer(new ZookeeperContainer());
         storageContainer = getContainers().registerContainer((DockerStorageContainer) StorageContainerFactory.newInstance(databaseType, testParam.getStorageContainerImage(), testParam.getScenario(),
                 StorageContainerConfigurationFactory.newInstance(databaseType)));
-        if (AdapterContainerConstants.PROXY.equalsIgnoreCase(testParam.getAdapter())) {
+        if (AdapterContainerEnum.PROXY.getValue().equalsIgnoreCase(testParam.getAdapter())) {
             jdbcContainer = null;
-            proxyContainer = (ShardingSphereProxyClusterContainer) AdapterContainerFactory.newInstance(EnvironmentConstants.CLUSTER_MODE, AdapterContainerConstants.PROXY,
+            proxyContainer = (ShardingSphereProxyClusterContainer) AdapterContainerFactory.newInstance(AdapterModeEnum.CLUSTER.getValue(), AdapterContainerEnum.PROXY.getValue(),
                     databaseType, storageContainer, testParam.getScenario(), ProxyClusterContainerConfigurationFactory.newInstance(testParam.getScenario(), databaseType));
             proxyContainer.dependsOn(governanceContainer, storageContainer);
             getContainers().registerContainer(proxyContainer);
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/mysql/MySQLContainerConfigurationFactory.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/mysql/MySQLContainerConfigurationFactory.java
index e8fa9d40a63..8843b327c92 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/mysql/MySQLContainerConfigurationFactory.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/mysql/MySQLContainerConfigurationFactory.java
@@ -19,8 +19,8 @@ package org.apache.shardingsphere.test.e2e.transaction.framework.container.confi
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.MySQLContainer;
 
 import java.util.Collections;
 import java.util.HashMap;
@@ -54,6 +54,6 @@ public final class MySQLContainerConfigurationFactory {
     }
     
     private static Map<String, String> getMountedResources() {
-        return Collections.singletonMap("/env/mysql/my.cnf", StorageContainerConstants.MYSQL_CONF_IN_CONTAINER);
+        return Collections.singletonMap("/env/mysql/my.cnf", MySQLContainer.MYSQL_CONF_IN_CONTAINER);
     }
 }
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/opengauss/OpenGaussContainerConfigurationFactory.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/opengauss/OpenGaussContainerConfigurationFactory.java
index 0a776c65b2d..890961caef6 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/opengauss/OpenGaussContainerConfigurationFactory.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/opengauss/OpenGaussContainerConfigurationFactory.java
@@ -21,6 +21,7 @@ import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.OpenGaussContainer;
 
 import java.util.Collections;
 import java.util.Map;
@@ -49,6 +50,6 @@ public final class OpenGaussContainerConfigurationFactory {
     }
     
     private static Map<String, String> getMountedResources() {
-        return Collections.singletonMap("/env/postgresql/postgresql.conf", StorageContainerConstants.OPENGAUSS_CONF_IN_CONTAINER);
+        return Collections.singletonMap("/env/postgresql/postgresql.conf", OpenGaussContainer.OPENGAUSS_CONF_IN_CONTAINER);
     }
 }
diff --git a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/postgresql/PostgreSQLContainerConfigurationFactory.java b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/postgresql/PostgreSQLContainerConfigurationFactory.java
index 691b4b7e535..9e5303cca5b 100644
--- a/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/postgresql/PostgreSQLContainerConfigurationFactory.java
+++ b/test/e2e/transaction/src/test/java/org/apache/shardingsphere/test/e2e/transaction/framework/container/config/postgresql/PostgreSQLContainerConfigurationFactory.java
@@ -21,6 +21,7 @@ import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.constants.StorageContainerConstants;
 import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.config.StorageContainerConfiguration;
+import org.apache.shardingsphere.test.e2e.env.container.atomic.storage.impl.OpenGaussContainer;
 
 import java.util.Collections;
 import java.util.HashMap;
@@ -53,6 +54,6 @@ public final class PostgreSQLContainerConfigurationFactory {
     }
     
     private static Map<String, String> getMountedResources() {
-        return Collections.singletonMap("/env/postgresql/postgresql.conf", StorageContainerConstants.OPENGAUSS_CONF_IN_CONTAINER);
+        return Collections.singletonMap("/env/postgresql/postgresql.conf", OpenGaussContainer.OPENGAUSS_CONF_IN_CONTAINER);
     }
 }