diff --git a/tests/genericxml2xmlindata/generic-chardev-tcp-missing-host.xml b/tests/genericxml2xmlindata/generic-chardev-tcp-missing-host.xml
new file mode 100644
index 0000000000..523c34f29b
--- /dev/null
+++ b/tests/genericxml2xmlindata/generic-chardev-tcp-missing-host.xml
@@ -0,0 +1,25 @@
+
+ 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-tcp-missing-service.xml b/tests/genericxml2xmlindata/generic-chardev-tcp-missing-service.xml
new file mode 100644
index 0000000000..880f07436a
--- /dev/null
+++ b/tests/genericxml2xmlindata/generic-chardev-tcp-missing-service.xml
@@ -0,0 +1,25 @@
+
+ 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-tcp.xml b/tests/genericxml2xmlindata/generic-chardev-tcp.xml
new file mode 100644
index 0000000000..e59c572a12
--- /dev/null
+++ b/tests/genericxml2xmlindata/generic-chardev-tcp.xml
@@ -0,0 +1,32 @@
+
+ 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-tcp.xml b/tests/genericxml2xmloutdata/generic-chardev-tcp.xml
new file mode 100644
index 0000000000..ef217c0abb
--- /dev/null
+++ b/tests/genericxml2xmloutdata/generic-chardev-tcp.xml
@@ -0,0 +1,35 @@
+
+ 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 5626eedf43..f5ad001968 100644
--- a/tests/genericxml2xmltest.c
+++ b/tests/genericxml2xmltest.c
@@ -105,6 +105,12 @@ mymain(void)
DO_TEST("cpu-cache-passthrough");
DO_TEST("cpu-cache-disable");
+ DO_TEST_DIFFERENT("chardev-tcp");
+ DO_TEST_FULL("chardev-tcp-missing-host", 0, false,
+ TEST_COMPARE_DOM_XML2XML_RESULT_FAIL_PARSE);
+ DO_TEST_FULL("chardev-tcp-missing-service", 0, false,
+ TEST_COMPARE_DOM_XML2XML_RESULT_FAIL_PARSE);
+
virObjectUnref(caps);
virObjectUnref(xmlopt);