diff --git a/tests/test_mlx5_uar.py b/tests/test_mlx5_uar.py
index 44a6267..d6f3ce8 100644
--- a/tests/test_mlx5_uar.py
+++ b/tests/test_mlx5_uar.py
@@ -36,3 +36,17 @@
         finally:
             for uar in self.uar_res.uars:
                 uar.close()
+
+    def test_uar_export_dmabuf_fd(self):
+        """Test exporting a UAR as a dmabuf FD"""
+        try:
+            self.uar_res.uars.append(Mlx5UAR(self.uar_res.ctx, _MLX5DV_UAR_ALLOC_TYPE_NC))
+            dmabuf_fd = self.uar_res.uars[-1].export_dmabuf_fd()
+            self.assertGreater(dmabuf_fd, 0, 'Expected a valid dmabuf FD greater than 0')
+        except PyverbsRDMAError as ex:
+            if ex.error_code in [errno.EPROTONOSUPPORT, errno.EOPNOTSUPP]:
+                raise unittest.SkipTest('UAR dmabuf export is not supported')
+            raise ex
+        finally:
+            for uar in self.uar_res.uars:
+                uar.close()
diff --git a/tests/test_mr.py b/tests/test_mr.py
index fdde078..ef75f4b 100644
--- a/tests/test_mr.py
+++ b/tests/test_mr.py
@@ -484,6 +484,18 @@
             with self.assertRaisesRegex(PyverbsRDMAError, 'Failed to register a device MR'):
                 DMMR(PD(self.ctx), dm_size + 4, dm_access, dm, 0)
 
+    def test_dm_export_dmabuf_fd(self):
+        """Test exporting a DM as a dmabuf FD"""
+        dm_size = 100
+        try:
+            with d.DM(self.ctx, d.AllocDmAttr(length=dm_size)) as dm:
+                dmabuf_fd = dm.export_dmabuf_fd()
+                self.assertGreater(dmabuf_fd, 0, 'Expected a valid dmabuf FD greater than 0')
+        except PyverbsRDMAError as ex:
+            if ex.error_code in [errno.EOPNOTSUPP, errno.EPROTONOSUPPORT]:
+                raise unittest.SkipTest('DM dmabuf export is not supported')
+            raise ex
+
 
 def check_dmabuf_support(gpu=0):
     """
