diff --git a/tests/TestSuite_ice_advanced_iavf_rss_gtpu.py b/tests/TestSuite_ice_advanced_iavf_rss_gtpu.py
index 9577fbfe..5c8e57ec 100644
--- a/tests/TestSuite_ice_advanced_iavf_rss_gtpu.py
+++ b/tests/TestSuite_ice_advanced_iavf_rss_gtpu.py
@@ -8457,7 +8457,12 @@ mac_ipv6_gtpc_symmetric_toeplitz = [mac_ipv6_gtpc_symmetric]
 
 
 class TestICEAdvancedIAVFRSSGTPU(TestCase):
-    supported_nic = ["ICE_100G-E810C_QSFP", "ICE_25G-E810C_SFP", "ICE_25G-E810_XXV_SFP"]
+    supported_nic = [
+        "ICE_100G-E810C_QSFP",
+        "ICE_25G-E810C_SFP",
+        "ICE_25G-E810_XXV_SFP",
+        "ICE_25G-E823C_QSFP",
+    ]
 
     @check_supported_nic(supported_nic)
     @skip_unsupported_pkg("os default")
diff --git a/tests/TestSuite_ice_dcf_acl_filter.py b/tests/TestSuite_ice_dcf_acl_filter.py
index 3fb0b163..107358cc 100644
--- a/tests/TestSuite_ice_dcf_acl_filter.py
+++ b/tests/TestSuite_ice_dcf_acl_filter.py
@@ -878,7 +878,12 @@ class ICEDCFACLFilterTest(TestCase):
         """
         self.verify(
             self.nic
-            in ["ICE_25G-E810C_SFP", "ICE_25G-E810_XXV_SFP", "ICE_100G-E810C_QSFP"],
+            in [
+                "ICE_25G-E810C_SFP",
+                "ICE_25G-E810_XXV_SFP",
+                "ICE_100G-E810C_QSFP",
+                "ICE_25G-E823C_QSFP",
+            ],
             "nic is not Intel® Ethernet 800 Series",
         )
         self.dut_ports = self.dut.get_ports(self.nic)
diff --git a/tests/TestSuite_ice_dcf_flow_priority.py b/tests/TestSuite_ice_dcf_flow_priority.py
index d8ae2b4b..3984bb0f 100644
--- a/tests/TestSuite_ice_dcf_flow_priority.py
+++ b/tests/TestSuite_ice_dcf_flow_priority.py
@@ -1830,7 +1830,12 @@ tv_mac_vlan_pppoe_ipcp_pay = {
 
 
 class ICEDCFFlowPriorityTest(TestCase):
-    supported_nic = ["ICE_100G-E810C_QSFP", "ICE_25G-E810C_SFP", "ICE_25G-E810_XXV_SFP"]
+    supported_nic = [
+        "ICE_100G-E810C_QSFP",
+        "ICE_25G-E810C_SFP",
+        "ICE_25G-E810_XXV_SFP",
+        "ICE_25G-E823C_QSFP",
+    ]
     # enable dcf
     dcf_representor = True
 
diff --git a/tests/TestSuite_ice_dcf_switch_filter.py b/tests/TestSuite_ice_dcf_switch_filter.py
index 23f9800b..3560d065 100644
--- a/tests/TestSuite_ice_dcf_switch_filter.py
+++ b/tests/TestSuite_ice_dcf_switch_filter.py
@@ -2036,7 +2036,12 @@ sv_mac_test_drop_action = [
 
 
 class ICEDCFSwitchFilterTest(TestCase):
-    supported_nic = ["ICE_100G-E810C_QSFP", "ICE_25G-E810C_SFP", "ICE_25G-E810_XXV_SFP"]
+    supported_nic = [
+        "ICE_100G-E810C_QSFP",
+        "ICE_25G-E810C_SFP",
+        "ICE_25G-E810_XXV_SFP",
+        "ICE_25G-E823C_QSFP",
+    ]
 
     def bind_nics_driver(self, ports, driver=""):
         # modprobe vfio driver
diff --git a/tests/TestSuite_ice_dcf_switch_filter_gtpu.py b/tests/TestSuite_ice_dcf_switch_filter_gtpu.py
index 5e822ac3..75024010 100644
--- a/tests/TestSuite_ice_dcf_switch_filter_gtpu.py
+++ b/tests/TestSuite_ice_dcf_switch_filter_gtpu.py
@@ -3536,7 +3536,12 @@ sv_mac_ipv6_gtpu_ipv6_tcp = [sv_mac_ipv6_gtpu_ipv6_tcp_1, sv_mac_ipv6_gtpu_ipv6_
 
 
 class ICEDCFSwitchFilterGTPUTest(TestCase):
-    supported_nic = ["ICE_100G-E810C_QSFP", "ICE_25G-E810C_SFP", "ICE_25G-E810_XXV_SFP"]
+    supported_nic = [
+        "ICE_100G-E810C_QSFP",
+        "ICE_25G-E810C_SFP",
+        "ICE_25G-E810_XXV_SFP",
+        "ICE_25G-E823C_QSFP",
+    ]
 
     @check_supported_nic(supported_nic)
     @skip_unsupported_pkg(["os default", "wireless"])
diff --git a/tests/TestSuite_ice_flow_priority.py b/tests/TestSuite_ice_flow_priority.py
index 8f569ba3..c3fde9d2 100644
--- a/tests/TestSuite_ice_flow_priority.py
+++ b/tests/TestSuite_ice_flow_priority.py
@@ -393,7 +393,12 @@ tv_mac_vlan_pppoe_ipcp_pay = {
 
 
 class ICEPFFlowPriorityTest(TestCase):
-    supported_nic = ["ICE_100G-E810C_QSFP", "ICE_25G-E810C_SFP", "ICE_25G-E810_XXV_SFP"]
+    supported_nic = [
+        "ICE_100G-E810C_QSFP",
+        "ICE_25G-E810C_SFP",
+        "ICE_25G-E810_XXV_SFP",
+        "ICE_25G-E823C_QSFP",
+    ]
 
     @check_supported_nic(supported_nic)
     def set_up_all(self):
diff --git a/tests/TestSuite_ice_iavf_rx_timestamp.py b/tests/TestSuite_ice_iavf_rx_timestamp.py
index 56463215..dc61da6c 100644
--- a/tests/TestSuite_ice_iavf_rx_timestamp.py
+++ b/tests/TestSuite_ice_iavf_rx_timestamp.py
@@ -74,7 +74,8 @@ class IAVFTimestampConfigureTest(TestCase):
         Generic filter Prerequistites
         """
         self.verify(
-            self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"],
+            self.nic
+            in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP", "ICE_25G-E823C_QSFP"],
             "%s nic not support vf timestamp" % self.nic,
         )
         self.dut_ports = self.dut.get_ports(self.nic)
diff --git a/tests/TestSuite_ice_qinq.py b/tests/TestSuite_ice_qinq.py
index 345477bf..5f01dfef 100644
--- a/tests/TestSuite_ice_qinq.py
+++ b/tests/TestSuite_ice_qinq.py
@@ -405,7 +405,12 @@ tvs_mac_l4_qinq_dcf_pipeline_mode = [tv_mac_qinq_ipv6_udp, tv_mac_qinq_ipv6_tcp]
 
 class TestICEQinq(TestCase):
     @check_supported_nic(
-        ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP", "ICE_25G-E810_XXV_SFP"]
+        [
+            "ICE_25G-E810C_SFP",
+            "ICE_100G-E810C_QSFP",
+            "ICE_25G-E810_XXV_SFP",
+            "ICE_25G-E823C_QSFP",
+        ]
     )
     def set_up_all(self):
         """
diff --git a/tests/TestSuite_ice_rss_configure.py b/tests/TestSuite_ice_rss_configure.py
index c0f73c82..aa59f07a 100644
--- a/tests/TestSuite_ice_rss_configure.py
+++ b/tests/TestSuite_ice_rss_configure.py
@@ -301,7 +301,12 @@ class RSSConfigureTest(TestCase):
         self.pf_pci = self.dut.ports_info[self.dut_ports[0]]["pci"]
         self.verify(
             self.nic
-            in ["ICE_25G-E810C_SFP", "ICE_25G-E810_XXV_SFP", "ICE_100G-E810C_QSFP"],
+            in [
+                "ICE_25G-E810C_SFP",
+                "ICE_25G-E810_XXV_SFP",
+                "ICE_100G-E810C_QSFP",
+                "ICE_25G-E823C_QSFP",
+            ],
             "%s nic not support ethertype filter" % self.nic,
         )
         self.rsspro = RssProcessing(self, self.pmdout, [self.__tx_iface], rxq=16)
diff --git a/tests/TestSuite_ice_rx_timestamp.py b/tests/TestSuite_ice_rx_timestamp.py
index 9d86edb9..79809988 100644
--- a/tests/TestSuite_ice_rx_timestamp.py
+++ b/tests/TestSuite_ice_rx_timestamp.py
@@ -74,7 +74,8 @@ class TimestampConfigureTest(TestCase):
         Generic filter Prerequistites
         """
         self.verify(
-            self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"],
+            self.nic
+            in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP", "ICE_25G-E823C_QSFP"],
             "%s nic not support timestamp" % self.nic,
         )
         self.dut_ports = self.dut.get_ports(self.nic)
diff --git a/tests/TestSuite_ice_switch_filter.py b/tests/TestSuite_ice_switch_filter.py
index 8bc64f9b..6a5f2aff 100644
--- a/tests/TestSuite_ice_switch_filter.py
+++ b/tests/TestSuite_ice_switch_filter.py
@@ -4349,7 +4349,12 @@ class ICESwitchFilterTest(TestCase):
         """
         self.verify(
             self.nic
-            in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP", "ICE_25G-E810_XXV_SFP"],
+            in [
+                "ICE_25G-E810C_SFP",
+                "ICE_100G-E810C_QSFP",
+                "ICE_25G-E810_XXV_SFP",
+                "ICE_25G-E823C_QSFP",
+            ],
             "%s nic not support Intel® Ethernet 800 Series switch filter" % self.nic,
         )
         self.dut_ports = self.dut.get_ports(self.nic)
diff --git a/tests/TestSuite_ice_switch_filter_pppoe.py b/tests/TestSuite_ice_switch_filter_pppoe.py
index d2853969..7ddd1e9c 100644
--- a/tests/TestSuite_ice_switch_filter_pppoe.py
+++ b/tests/TestSuite_ice_switch_filter_pppoe.py
@@ -2918,7 +2918,12 @@ class ICESwitchFilterPPPOETest(TestCase):
         """
         self.verify(
             self.nic
-            in ["ICE_25G-E810C_SFP", "ICE_25G-E810_XXV_SFP", "ICE_100G-E810C_QSFP"],
+            in [
+                "ICE_25G-E810C_SFP",
+                "ICE_25G-E810_XXV_SFP",
+                "ICE_100G-E810C_QSFP",
+                "ICE_25G-E823C_QSFP",
+            ],
             "%s nic not support Intel® Ethernet 800 Series switch filter" % self.nic,
         )
         self.dut_ports = self.dut.get_ports(self.nic)
diff --git a/tests/TestSuite_ipgre.py b/tests/TestSuite_ipgre.py
index ecd8e19c..14c57812 100644
--- a/tests/TestSuite_ipgre.py
+++ b/tests/TestSuite_ipgre.py
@@ -45,6 +45,7 @@ class TestIpgre(TestCase):
                 "I40E_40G-QSFP_B",
                 "I40E_25G-25G_SFP28",
                 "I40E_10G-10G_BASE_T_BC",
+                "ICE_25G-E823C_QSFP",
                 "ICE_25G-E810C_SFP",
                 "ICE_100G-E810C_QSFP",
                 "cavium_a063",
diff --git a/tests/TestSuite_nvgre.py b/tests/TestSuite_nvgre.py
index 6005b4eb..46ea6bad 100644
--- a/tests/TestSuite_nvgre.py
+++ b/tests/TestSuite_nvgre.py
@@ -386,7 +386,11 @@ class TestNvgre(TestCase):
             self.compile_switch = "CONFIG_RTE_LIBRTE_I40E_INC_VECTOR"
         elif self.nic in ["IXGBE_10G-X550T", "IXGBE_10G-X550EM_X_10G_T"]:
             self.compile_switch = "CONFIG_RTE_IXGBE_INC_VECTOR"
-        elif self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"]:
+        elif self.nic in [
+            "ICE_25G-E810C_SFP",
+            "ICE_100G-E810C_QSFP",
+            "ICE_25G-E823C_QSFP",
+        ]:
             print("Intel® Ethernet 800 Series support default none VECTOR")
         else:
             self.verify(False, "%s not support NVGRE case" % self.nic)
@@ -723,7 +727,11 @@ class TestNvgre(TestCase):
         verify nvgre packet with ipv6
         """
         # packet type detect must used without VECTOR pmd
-        if self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"]:
+        if self.nic in [
+            "ICE_25G-E810C_SFP",
+            "ICE_100G-E810C_QSFP",
+            "ICE_25G-E823C_QSFP",
+        ]:
             print("Intel® Ethernet 800 Series support default none VECTOR")
             src_vec_model = "n"
 
@@ -815,7 +823,11 @@ class TestNvgre(TestCase):
         verify nvgre packet with ipv4
         """
         # packet type detect must used without VECTOR pmd
-        if self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"]:
+        if self.nic in [
+            "ICE_25G-E810C_SFP",
+            "ICE_100G-E810C_QSFP",
+            "ICE_25G-E823C_QSFP",
+        ]:
             print("Intel® Ethernet 800 Series support default none VECTOR")
             src_vec_model = "n"
 
diff --git a/tests/TestSuite_pmdrssreta.py b/tests/TestSuite_pmdrssreta.py
index d765ebf0..1fd20f7a 100644
--- a/tests/TestSuite_pmdrssreta.py
+++ b/tests/TestSuite_pmdrssreta.py
@@ -285,6 +285,7 @@ class TestPmdrssreta(TestCase):
     def test_rss_key_size(self):
         nic_rss_key_size = {
             "ICE_25G-E810C_SFP": 52,
+            "ICE_25G-E823C_QSFP": 52,
             "ICE_100G-E810C_QSFP": 52,
             "I40E_10G-SFP_XL710": 52,
             "I40E_40G-QSFP_A": 52,
diff --git a/tests/TestSuite_runtime_vf_queue_number_kernel.py b/tests/TestSuite_runtime_vf_queue_number_kernel.py
index 68639dfa..ea6800c1 100644
--- a/tests/TestSuite_runtime_vf_queue_number_kernel.py
+++ b/tests/TestSuite_runtime_vf_queue_number_kernel.py
@@ -36,6 +36,7 @@ class TestRuntimeVfQueueNumberKernel(TestCase):
                 "I40E_10G-10G_BASE_T_BC",
                 "ICE_100G-E810C_QSFP",
                 "ICE_25G-E810C_SFP",
+                "ICE_25G-E823C_QSFP",
             ],
             "Only supported by Intel® Ethernet 700 Series and Intel® Ethernet 800 Series",
         )
diff --git a/tests/TestSuite_uni_pkt.py b/tests/TestSuite_uni_pkt.py
index b7950830..e883b84d 100644
--- a/tests/TestSuite_uni_pkt.py
+++ b/tests/TestSuite_uni_pkt.py
@@ -278,6 +278,7 @@ class TestUniPacket(TestCase):
             self.nic
             in [
                 "ICE_25G-E810C_SFP",
+                "ICE_25G-E823C_QSFP",
                 "ICE_100G-E810C_QSFP",
                 "IXGBE_10G-82599_SFP",
                 "I40E_10G-SFP_XL710",
diff --git a/tests/TestSuite_userspace_ethtool.py b/tests/TestSuite_userspace_ethtool.py
index 9bef4587..d8db9073 100644
--- a/tests/TestSuite_userspace_ethtool.py
+++ b/tests/TestSuite_userspace_ethtool.py
@@ -579,7 +579,11 @@ class TestUserspaceEthtool(TestCase):
             mtu_threshold = 2026
             offset = 4
         # RTE_ETHER_HDR_LEN + RTE_ETHER_CRC_LEN + ICE_VLAN_TAG_SIZE * 2
-        if self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"]:
+        if self.nic in [
+            "ICE_25G-E810C_SFP",
+            "ICE_100G-E810C_QSFP",
+            "ICE_25G-E823C_QSFP",
+        ]:
             offset = 8
         for index in range(len(self.ports)):
             port = self.ports[index]
@@ -590,7 +594,11 @@ class TestUserspaceEthtool(TestCase):
             self.tester.send_expect("ifconfig %s mtu 9000" % (intf), "# ")
             for mtu in mtus:
                 # Intel® Ethernet 800 Series should stop port before set mtu
-                if self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"]:
+                if self.nic in [
+                    "ICE_25G-E810C_SFP",
+                    "ICE_100G-E810C_QSFP",
+                    "ICE_25G-E823C_QSFP",
+                ]:
                     self.dut.send_expect("stop %s" % index, "EthApp>")
                 # The mtu threshold is 2022,When it is greater than 2022, the open/stop port is required.
                 if mtu > mtu_threshold:
@@ -606,7 +614,11 @@ class TestUserspaceEthtool(TestCase):
                     self.dut.send_expect("open %s" % index, "EthApp>")
                 self.dut.send_expect("mtu %d %d" % (index, mtu), "EthApp>")
 
-                if self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"]:
+                if self.nic in [
+                    "ICE_25G-E810C_SFP",
+                    "ICE_100G-E810C_QSFP",
+                    "ICE_25G-E823C_QSFP",
+                ]:
                     self.dut.send_expect("open %s" % index, "EthApp>")
 
                 self.tester.is_interface_up(intf)
diff --git a/tests/TestSuite_vf_rss.py b/tests/TestSuite_vf_rss.py
index 058d53db..a6772baf 100644
--- a/tests/TestSuite_vf_rss.py
+++ b/tests/TestSuite_vf_rss.py
@@ -268,6 +268,7 @@ class TestVfRss(TestCase):
                 "I40E_10G-SFP_X722",
                 "I40E_10G-10G_BASE_T_X722",
                 "I40E_10G-10G_BASE_T_BC",
+                "ICE_25G-E823C_QSFP",
                 "ICE_25G-E810C_SFP",
                 "ICE_100G-E810C_QSFP",
             ],
diff --git a/tests/TestSuite_vxlan.py b/tests/TestSuite_vxlan.py
index c69d7903..1bf12743 100644
--- a/tests/TestSuite_vxlan.py
+++ b/tests/TestSuite_vxlan.py
@@ -276,7 +276,11 @@ class TestVxlan(TestCase):
             self.compile_switch = "CONFIG_RTE_LIBRTE_I40E_INC_VECTOR"
         elif self.nic in ["IXGBE_10G-X550T", "IXGBE_10G-X550EM_X_10G_T"]:
             self.compile_switch = "CONFIG_RTE_IXGBE_INC_VECTOR"
-        elif self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"]:
+        elif self.nic in [
+            "ICE_25G-E810C_SFP",
+            "ICE_100G-E810C_QSFP",
+            "ICE_25G-E823C_QSFP",
+        ]:
             print("Intel® Ethernet 700 Series support default none VECTOR")
         else:
             self.verify(False, "%s not support this vxlan" % self.nic)
@@ -679,7 +683,11 @@ class TestVxlan(TestCase):
         """
         verify vxlan packet detection
         """
-        if self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"]:
+        if self.nic in [
+            "ICE_25G-E810C_SFP",
+            "ICE_100G-E810C_QSFP",
+            "ICE_25G-E823C_QSFP",
+        ]:
             print("Intel® Ethernet 700 Series support default none VECTOR")
             src_vec_model = "n"
         self.eal_para = self.dut.create_eal_parameters(
@@ -718,7 +726,11 @@ class TestVxlan(TestCase):
         """
         verify vxlan packet detection with ipv6 header
         """
-        if self.nic in ["ICE_25G-E810C_SFP", "ICE_100G-E810C_QSFP"]:
+        if self.nic in [
+            "ICE_25G-E810C_SFP",
+            "ICE_100G-E810C_QSFP",
+            "ICE_25G-E823C_QSFP",
+        ]:
             print("Intel® Ethernet 700 Series support default none VECTOR")
             src_vec_model = "n"
 
