diff --git a/test/test_mac.py b/test/test_mac.py
index 098032fcf5bace3b0917629d0b6158fabd4789d2..871b8eb40030d10aa5f5c4a822a6faedcd1a7dfb 100644
--- a/test/test_mac.py
+++ b/test/test_mac.py
@@ -106,3 +106,42 @@ def test_anonymize_ether_uaa() -> None:
     assert ether_laa.src[10:] != mac_uaa[10:]
     assert ether_laa.dst.startswith(mac_uaa[:8])
     assert ether_laa.dst[10:] != mac_uaa[10:]
+
+
+def test_anonymize_arp_multicast() -> None:
+    """
+    Test the function `anonymize_arp`,
+    with multicast addresses.
+    """
+    arp_multicast = ARP(hwsrc=mac_multicast, hwdst=mac_multicast)
+    anonymize_arp(arp_multicast)
+    assert arp_multicast.hwsrc == mac_multicast
+    assert arp_multicast.hwdst == mac_multicast
+
+
+def test_anonymize_arp_laa() -> None:
+    """
+    Test the function `anonymize_arp`,
+    with locally administered addresses.
+    """
+    arp_laa = ARP(hwsrc=mac_laa, hwdst=mac_laa)
+    anonymize_arp(arp_laa)
+    assert arp_laa.hwsrc != mac_laa
+    assert get_ig_bit(arp_laa.hwsrc) == get_ig_bit(mac_laa)
+    assert get_ul_bit(arp_laa.hwsrc) == get_ul_bit(mac_laa)
+    assert arp_laa.hwdst != mac_laa
+    assert get_ig_bit(arp_laa.hwdst) == get_ig_bit(mac_laa)
+    assert get_ul_bit(arp_laa.hwdst) == get_ul_bit(mac_laa)
+
+
+def test_anonymize_arp_uaa() -> None:
+    """
+    Test the function `anonymize_arp`,
+    with universally administered addresses.
+    """
+    arp_uaa = ARP(hwsrc=mac_uaa, hwdst=mac_uaa)
+    anonymize_arp(arp_uaa)
+    assert arp_uaa.hwsrc.startswith(mac_uaa[:8])
+    assert arp_uaa.hwsrc[10:] != mac_uaa[10:]
+    assert arp_uaa.hwdst.startswith(mac_uaa[:8])
+    assert arp_uaa.hwdst[10:] != mac_uaa[10:]