diff --git a/test/mocked_utils.hpp b/test/mocked_utils.hpp
index 71aac99..71a4f77 100644
--- a/test/mocked_utils.hpp
+++ b/test/mocked_utils.hpp
@@ -11,14 +11,14 @@
     virtual ~MockedUtils() = default;
 
     MOCK_CONST_METHOD1(getPSUInventoryPath,
-                       std::vector<std::string>(sdbusplus::bus::bus& bus));
+                       std::vector<std::string>(sdbusplus::bus_t& bus));
 
     MOCK_CONST_METHOD3(getService,
-                       std::string(sdbusplus::bus::bus& bus, const char* path,
+                       std::string(sdbusplus::bus_t& bus, const char* path,
                                    const char* interface));
 
     MOCK_CONST_METHOD3(getServices,
-                       std::vector<std::string>(sdbusplus::bus::bus& bus,
+                       std::vector<std::string>(sdbusplus::bus_t& bus,
                                                 const char* path,
                                                 const char* interface));
 
@@ -34,7 +34,7 @@
                                           const AssociationList& assocs));
 
     MOCK_CONST_METHOD5(getPropertyImpl,
-                       any(sdbusplus::bus::bus& bus, const char* service,
+                       any(sdbusplus::bus_t& bus, const char* service,
                            const char* path, const char* interface,
                            const char* propertyName));
 };
diff --git a/test/test_activation.cpp b/test/test_activation.cpp
index 8da5b2d..2e93672 100644
--- a/test/test_activation.cpp
+++ b/test/test_activation.cpp
@@ -60,7 +60,7 @@
     }
 
     sdbusplus::SdBusMock sdbusMock;
-    sdbusplus::bus::bus mockedBus = sdbusplus::get_mocked_new(&sdbusMock);
+    sdbusplus::bus_t mockedBus = sdbusplus::get_mocked_new(&sdbusMock);
     const utils::MockedUtils& mockedUtils;
     MockedAssociationInterface mockedAssociationInterface;
     MockedActivationListener mockedActivationListener;
diff --git a/test/test_item_updater.cpp b/test/test_item_updater.cpp
index dab6a57..2fe1c86 100644
--- a/test/test_item_updater.cpp
+++ b/test/test_item_updater.cpp
@@ -59,7 +59,7 @@
 
     static constexpr auto dBusPath = SOFTWARE_OBJPATH;
     sdbusplus::SdBusMock sdbusMock;
-    sdbusplus::bus::bus mockedBus = sdbusplus::get_mocked_new(&sdbusMock);
+    sdbusplus::bus_t mockedBus = sdbusplus::get_mocked_new(&sdbusMock);
     const utils::MockedUtils& mockedUtils;
     std::unique_ptr<ItemUpdater> itemUpdater;
     Properties propAdded{{PRESENT, PropertyType(true)}};
diff --git a/test/test_utils.cpp b/test/test_utils.cpp
index afcbb47..668803e 100644
--- a/test/test_utils.cpp
+++ b/test/test_utils.cpp
@@ -23,7 +23,7 @@
 
     EXPECT_CALL(sdbusMock, sd_bus_message_ref(IsNull()))
         .WillOnce(Return(nullptr));
-    sdbusplus::message::message msg(nullptr, &sdbusMock);
+    sdbusplus::message_t msg(nullptr, &sdbusMock);
 
     const char* path0 = "/com/example/chassis/powersupply0";
     const char* path1 = "/com/example/chassis/powersupply1";
