diff --git a/tests/genericxml2xmlindata/generic-chardev-udp-missing-connect-service.xml b/tests/genericxml2xmlindata/generic-chardev-udp-missing-connect-service.xml
new file mode 100644
index 0000000000..c7ed52b457
--- /dev/null
+++ b/tests/genericxml2xmlindata/generic-chardev-udp-missing-connect-service.xml
@@ -0,0 +1,24 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219136
+ 219136
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i686
+
+
+
+
+
+
+
+
diff --git a/tests/genericxml2xmlindata/generic-chardev-udp.xml b/tests/genericxml2xmlindata/generic-chardev-udp.xml
new file mode 100644
index 0000000000..34441ae68e
--- /dev/null
+++ b/tests/genericxml2xmlindata/generic-chardev-udp.xml
@@ -0,0 +1,47 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219136
+ 219136
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i686
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/genericxml2xmloutdata/generic-chardev-udp.xml b/tests/genericxml2xmloutdata/generic-chardev-udp.xml
new file mode 100644
index 0000000000..c4a719f2f6
--- /dev/null
+++ b/tests/genericxml2xmloutdata/generic-chardev-udp.xml
@@ -0,0 +1,47 @@
+
+ QEMUGuest1
+ c7a5fdbd-edaf-9455-926a-d65c16db1809
+ 219136
+ 219136
+ 1
+
+ hvm
+
+
+
+ destroy
+ restart
+ destroy
+
+ /usr/bin/qemu-system-i686
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/genericxml2xmltest.c b/tests/genericxml2xmltest.c
index f5ad001968..c10c3f5c04 100644
--- a/tests/genericxml2xmltest.c
+++ b/tests/genericxml2xmltest.c
@@ -110,6 +110,9 @@ mymain(void)
TEST_COMPARE_DOM_XML2XML_RESULT_FAIL_PARSE);
DO_TEST_FULL("chardev-tcp-missing-service", 0, false,
TEST_COMPARE_DOM_XML2XML_RESULT_FAIL_PARSE);
+ DO_TEST_DIFFERENT("chardev-udp");
+ DO_TEST_FULL("chardev-udp-missing-connect-service", 0, false,
+ TEST_COMPARE_DOM_XML2XML_RESULT_FAIL_PARSE);
virObjectUnref(caps);
virObjectUnref(xmlopt);