diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..5cf7948
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+*.pyc
+*/logs
diff --git a/test_unixface/NDNTrafficClient.conf b/test_unixface/NDNTrafficClient.conf
new file mode 100644
index 0000000..5f6bf95
--- /dev/null
+++ b/test_unixface/NDNTrafficClient.conf
@@ -0,0 +1,9 @@
+##########
+TrafficPercentage=50
+Name=/example/A
+ExpectedContent=AAAAAAAA
+##########
+TrafficPercentage=50
+Name=/example/B
+ExpectedContent=BBBBBBBB
+##########
diff --git a/test_unixface/NDNTrafficServer.conf b/test_unixface/NDNTrafficServer.conf
new file mode 100644
index 0000000..1f4aab5
--- /dev/null
+++ b/test_unixface/NDNTrafficServer.conf
@@ -0,0 +1,7 @@
+##########
+Name=/example/A
+Content=AAAAAAAA
+##########
+Name=/example/B
+Content=BBBBBBBB
+##########
diff --git a/test_unixface/README.md b/test_unixface/README.md
new file mode 100644
index 0000000..01bb8ac
--- /dev/null
+++ b/test_unixface/README.md
@@ -0,0 +1,6 @@
+Test correctness of UNIX face and simple forwarding.
+
+1. Start NFD.
+2. Run traffic generator producer and consumer.
+3. Collect results.
+
diff --git a/test_unixface/__init__.py b/test_unixface/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/test_unixface/__init__.py
diff --git a/test_unixface/test_unixface.py b/test_unixface/test_unixface.py
new file mode 100644
index 0000000..0dbfaeb
--- /dev/null
+++ b/test_unixface/test_unixface.py
@@ -0,0 +1,33 @@
+#!/usr/bin/python2
+# -*- Mode:python; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
+#
+# Copyright (C) 2014 University of Arizona
+# Author: Yi Huang <ltr120@email.arizona.edu>
+# See COPYING for copyright and distribution information.
+#
+
+import os
+import unittest
+import subprocess
+
+class test_unixface(unittest.TestCase):
+    """Test case for testing unix face"""
+
+    def setUp(self):
+        print "\nTesting unix face"
+        print "*****************************"
+        os.chdir("test_unixface")
+
+    def tearDown(self):
+        print "*****************************"
+        os.chdir("..")
+
+    def test_unixface(self):
+        ret = subprocess.call(["./unix-face-test.sh"], shell=True)
+        print "Test script return value:", ret
+        errormsg = {
+            1 : "ndn-traffic client does not end normally. See logs/client.log",
+            2 : "Data loss detected",
+        }
+        if (ret != 0):
+            self.fail(errormsg[ret])
diff --git a/test_unixface/unix-face-test.sh b/test_unixface/unix-face-test.sh
new file mode 100755
index 0000000..0599a8f
--- /dev/null
+++ b/test_unixface/unix-face-test.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+mkdir -p logs
+clean_up() {
+    r=$(sudo killall ndn-traffic-server 2>&1)
+    r=$(sudo killall nfd 2>&1)
+}
+sudo nfd > logs/nfd.log 2>&1 &
+sleep 2
+ndn-traffic-server NDNTrafficServer.conf > logs/server.log 2>&1 &
+sleep 2
+echo "Sending interests..."
+ndn-traffic -i 100 -c 100 NDNTrafficClient.conf > logs/client.log 2>&1
+clean_up
+output=$(grep "Total Interest Loss" logs/client.log | head -1 | cut -d= -f2 | cut -d' ' -f2 | cut -d% -f1)
+if [[ -z $output ]]
+then
+    echo "ndn-traffic client does not end normally. See logs/client.log"
+    exit 1
+fi
+if [[ $output != '0' ]]
+then
+    echo "Expected no interest Loss. Actual: $output%"
+    echo "For more information, please examine the log at \"$(pwd)/logs\""
+    exit 2
+fi
+echo "Unix Face Test PASSED"
