diff --git a/test/ibm/hypervisor-network-mgr-test/mock_hyp_sys_config.hpp b/test/ibm/hypervisor-network-mgr-test/mock_hyp_sys_config.hpp
index e5bd42d..1f5b6e6 100644
--- a/test/ibm/hypervisor-network-mgr-test/mock_hyp_sys_config.hpp
+++ b/test/ibm/hypervisor-network-mgr-test/mock_hyp_sys_config.hpp
@@ -14,7 +14,7 @@
 class MockHypSysConfig : public phosphor::network::HypSysConfig
 {
   public:
-    MockHypSysConfig(sdbusplus::bus::bus& bus, const std::string& objPath,
+    MockHypSysConfig(sdbusplus::bus_t& bus, const std::string& objPath,
                      HypNetworkMgr& parent) :
         HypSysConfig(bus, objPath, parent)
     {
diff --git a/test/ibm/hypervisor-network-mgr-test/test_hyp_network_manager.cpp b/test/ibm/hypervisor-network-mgr-test/test_hyp_network_manager.cpp
index abdd14c..08fa317 100644
--- a/test/ibm/hypervisor-network-mgr-test/test_hyp_network_manager.cpp
+++ b/test/ibm/hypervisor-network-mgr-test/test_hyp_network_manager.cpp
@@ -15,7 +15,7 @@
 class TestHypNetworkManager : public testing::Test
 {
   public:
-    sdbusplus::bus::bus bus;
+    sdbusplus::bus_t bus;
     HypNetworkMgr manager;
     sdeventplus::Event event = sdeventplus::Event::get_default();
     TestHypNetworkManager() :
diff --git a/test/ibm/hypervisor-network-mgr-test/test_hyp_sys_config.cpp b/test/ibm/hypervisor-network-mgr-test/test_hyp_sys_config.cpp
index b09d024..4e4382e 100644
--- a/test/ibm/hypervisor-network-mgr-test/test_hyp_sys_config.cpp
+++ b/test/ibm/hypervisor-network-mgr-test/test_hyp_sys_config.cpp
@@ -15,7 +15,7 @@
 class TestHypSysConfig : public testing::Test
 {
   public:
-    sdbusplus::bus::bus bus;
+    sdbusplus::bus_t bus;
     HypNetworkMgr manager;
     MockHypSysConfig sysConfigObj;
     sdeventplus::Event event = sdeventplus::Event::get_default();
diff --git a/test/mock_ethernet_interface.hpp b/test/mock_ethernet_interface.hpp
index bfe81ed..b8c3335 100644
--- a/test/mock_ethernet_interface.hpp
+++ b/test/mock_ethernet_interface.hpp
@@ -12,7 +12,7 @@
 class MockEthernetInterface : public EthernetInterface
 {
   public:
-    MockEthernetInterface(sdbusplus::bus::bus& bus, const std::string& objPath,
+    MockEthernetInterface(sdbusplus::bus_t& bus, const std::string& objPath,
                           DHCPConf dhcpEnabled, Manager& parent,
                           bool emitSignal) :
         EthernetInterface(bus, objPath, dhcpEnabled, parent, emitSignal,
diff --git a/test/mock_network_manager.hpp b/test/mock_network_manager.hpp
index dce1b36..741cee9 100644
--- a/test/mock_network_manager.hpp
+++ b/test/mock_network_manager.hpp
@@ -18,7 +18,7 @@
 class MockManager : public phosphor::network::Manager
 {
   public:
-    MockManager(sdbusplus::bus::bus& bus, const char* path,
+    MockManager(sdbusplus::bus_t& bus, const char* path,
                 const std::string& dir) :
         phosphor::network::Manager(bus, path, dir)
     {
diff --git a/test/test_ethernet_interface.cpp b/test/test_ethernet_interface.cpp
index 0846f7e..24fe5fb 100644
--- a/test/test_ethernet_interface.cpp
+++ b/test/test_ethernet_interface.cpp
@@ -25,7 +25,7 @@
 class TestEthernetInterface : public stdplus::gtest::TestWithTmp
 {
   public:
-    sdbusplus::bus::bus bus;
+    sdbusplus::bus_t bus;
     std::string confDir;
     MockManager manager;
     MockEthernetInterface interface;
@@ -39,7 +39,7 @@
 
     static constexpr ether_addr mac{0x11, 0x22, 0x33, 0x44, 0x55, 0x66};
 
-    static MockEthernetInterface makeInterface(sdbusplus::bus::bus& bus,
+    static MockEthernetInterface makeInterface(sdbusplus::bus_t& bus,
                                                MockManager& manager)
     {
         mock_clear();
diff --git a/test/test_network_manager.cpp b/test/test_network_manager.cpp
index 76983ed..4e81d48 100644
--- a/test/test_network_manager.cpp
+++ b/test/test_network_manager.cpp
@@ -24,7 +24,7 @@
 class TestNetworkManager : public stdplus::gtest::TestWithTmp
 {
   public:
-    sdbusplus::bus::bus bus;
+    sdbusplus::bus_t bus;
     MockManager manager;
     TestNetworkManager() :
         bus(sdbusplus::bus::new_default()),
diff --git a/test/test_rtnetlink.cpp b/test/test_rtnetlink.cpp
index 51e7649..98d8db3 100644
--- a/test/test_rtnetlink.cpp
+++ b/test/test_rtnetlink.cpp
@@ -19,7 +19,7 @@
 
 namespace network
 {
-sdbusplus::bus::bus bus(sdbusplus::bus::new_default());
+sdbusplus::bus_t bus(sdbusplus::bus::new_default());
 extern std::unique_ptr<MockManager> manager;
 extern std::unique_ptr<Timer> refreshObjectTimer;
 EventPtr eventPtr = nullptr;
diff --git a/test/test_vlan_interface.cpp b/test/test_vlan_interface.cpp
index 2dd78b8..ea8eb01 100644
--- a/test/test_vlan_interface.cpp
+++ b/test/test_vlan_interface.cpp
@@ -25,7 +25,7 @@
 class TestVlanInterface : public stdplus::gtest::TestWithTmp
 {
   public:
-    sdbusplus::bus::bus bus;
+    sdbusplus::bus_t bus;
     std::string confDir;
     MockManager manager;
     EthernetInterface interface;
@@ -37,7 +37,7 @@
     {
     }
 
-    static EthernetInterface makeInterface(sdbusplus::bus::bus& bus,
+    static EthernetInterface makeInterface(sdbusplus::bus_t& bus,
                                            MockManager& manager)
     {
         mock_clear();
