diff --git a/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborSolicitationTest.java b/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborSolicitationTest.java
index 2571b7a..03e57f5e 100644
--- a/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborSolicitationTest.java
+++ b/utils/misc/src/test/java/org/onlab/packet/ndp/NeighborSolicitationTest.java
@@ -20,6 +20,9 @@
 import org.onlab.packet.DeserializationException;
 import org.onlab.packet.Deserializer;
 import org.onlab.packet.MacAddress;
+import org.onlab.packet.PacketTestUtils;
+
+import java.nio.ByteBuffer;
 
 import static org.hamcrest.Matchers.is;
 import static org.junit.Assert.assertArrayEquals;
@@ -79,6 +82,20 @@
         assertArrayEquals(ns.serialize(), bytePacket);
     }
 
+    @Test
+    public void testDeserializeBadInput() throws Exception {
+        PacketTestUtils.testDeserializeBadInput(NeighborSolicitation.deserializer());
+    }
+
+    @Test
+    public void testDeserializeTruncated() throws Exception {
+        // Run the truncation test only on the NeighborSolicitation header
+        byte[] nsHeader = new byte[NeighborSolicitation.HEADER_LENGTH];
+        ByteBuffer.wrap(bytePacket).get(nsHeader);
+
+        PacketTestUtils.testDeserializeTruncated(NeighborSolicitation.deserializer(), nsHeader);
+    }
+
     /**
      * Tests deserialize and getters.
      */
