diff --git a/test_auto_prefix_propagate/B.sh b/test_auto_prefix_propagate/B.sh
index 4bc5f0c..585f2dc 100755
--- a/test_auto_prefix_propagate/B.sh
+++ b/test_auto_prefix_propagate/B.sh
@@ -108,7 +108,7 @@
     sleep 2
 
     LOG "set multicast strategy for ndn:/"
-    nfdc set-strategy ndn:/ ndn:/localhost/nfd/strategy/multicast >>$testLog 2>&1
+    nfdc strategy set / /localhost/nfd/strategy/multicast >>$testLog 2>&1
     LOG "set autoreg prefix to /Z"
     nfd-autoreg --prefix=/Z >> $testLog 2>&1 &
 }
diff --git a/test_auto_prefix_propagate/auto-prefix-propagate-test.sh b/test_auto_prefix_propagate/auto-prefix-propagate-test.sh
index 6f62782..13614e1 100755
--- a/test_auto_prefix_propagate/auto-prefix-propagate-test.sh
+++ b/test_auto_prefix_propagate/auto-prefix-propagate-test.sh
@@ -46,14 +46,14 @@
 }
 
 inspect_hub_rib_exist() {
-    record=$(run_hub_cmd "nfd-status -r" | grep "$1 route")
+    record=$(run_hub_cmd "nfdc route list" | grep "prefix=$1 ")
     if [[ -z "$record" ]]; then
         end_test "Fail test $2"
     fi
 }
 
 inspect_hub_rib_none() {
-    record=$(run_hub_cmd "nfd-status -r" | grep "$1 route")
+    record=$(run_hub_cmd "nfdc route list" | grep "prefix=$1 ")
     if [[ ! -z "$record" ]]; then
         end_test "Fail test $2. the matched record: $record"
     fi
@@ -61,7 +61,7 @@
 
 run_test() {
     faceUri=udp4://$hubIP:6363
-    nfdc create $faceUri >> $testLog
+    nfdc face create $faceUri >> $testLog
 
     defer_time=5
 
@@ -71,7 +71,7 @@
 as the /localhop/nfd prefix has not been registered to the local RIB now."
 
     LOG "run test case: 2"
-    nfdc register ndn:/localhop/nfd $faceUri >> $testLog && sleep $defer_time
+    nfdc route add /localhop/nfd $faceUri >> $testLog && sleep $defer_time
     inspect_hub_rib_exist /Z/A "2: route of /Z/A does not exist, but it should exist because \
 automatic prefix propagation is active (/localhop/nfd prefix has been registered), Z/A/G is \
 present in local RIB and /Z/A has been configured as an identity in NFD's keychain."
diff --git a/test_hub_discovery/README.md b/test_hub_discovery/README.md
index 0514bbd..14b6341 100644
--- a/test_hub_discovery/README.md
+++ b/test_hub_discovery/README.md
@@ -19,20 +19,20 @@
 
 #### Initialize ndn-autoconfig-server and dns records on host A:
 1. start NFD.
-2. start ndn-autoconfig-server, set FaceUri to udp4://10.63.18.1
-3. start bind to serve these records
+2. start `ndn-autoconfig-server`, set FaceUri to udp4://10.63.18.1
+3. start `bind` to serve these records
     * _ndn._udp.autoconfig-test.named-data.net => 10.63.18.2
     * _ndn._udp.autoconfig-test.tmp._homehub._autoconf.named-data.net => 10.63.18.3
 
 ### Test stage 1: multicast discovery
 On host B:
 
-1. invoke ndnsec-keygen /tmp/autoconfig-test | ndnsec-install-cert -
+1. invoke `ndnsec-keygen /tmp/autoconfig-test | ndnsec-install-cert -`
 2. in /etc/resolv.conf, set DNS Server to A's IP address on A-B link,
 3. set DNS search domain to autoconfig-test-none.named-data.net
 4. start NFD.
-5. invoke ndn-autoconfig
-6. execute nfd-status -f,
+5. invoke `ndn-autoconfig`
+6. execute `nfdc face list`,
     * search output for 10.63.18.1, fail if not found.
     * search output for 10.63.18.2, fail if found.
     * search output for 10.63.18.3, fail if found.
@@ -41,12 +41,12 @@
 ### Test stage 2: DNS query with default suffix
 On host D:
 
-1. invoke ndnsec-keygen /tmp/autoconfig-test | ndnsec-install-cert -
+1. invoke `ndnsec-keygen /tmp/autoconfig-test | ndnsec-install-cert -`
 2. in /etc/resolv.conf, set DNS Server to A's IP address on A-R link,
 3. set DNS search domain to autoconfig-test.named-data.net
 4. start NFD
-5. invoke ndn-autoconfig
-6. execute nfd-status -f,
+5. invoke `ndn-autoconfig`
+6. execute `nfdc face list`,
     * search output for 10.63.18.1, fail if found.
     * search output for 10.63.18.2, fail if not found.
     * search output for 10.63.18.3, fail if found.
@@ -58,12 +58,12 @@
 1. in /etc/resolv.conf, set DNS Server to A's IP address on A-R link,
 2. set DNS search domain to autoconfig-test-none.named-data.net
 3. start NFD
-4. invoke ndn-autoconfig
-5. execute nfd-status -f,
+4. invoke `ndn-autoconfig`
+5. execute `nfdc face list`,
     * search output for 10.63.18.1, fail if found.
     * search output for 10.63.18.2, fail if found.
     * search output for 10.63.18.3, fail if not found.
 6. stop NFD.
 
 ## Return value
-PASS of all stages finished successfully.
\ No newline at end of file
+PASS of all stages finished successfully.
diff --git a/test_hub_discovery/test-B-stage1.sh b/test_hub_discovery/test-B-stage1.sh
index 476b933..a11f516 100755
--- a/test_hub_discovery/test-B-stage1.sh
+++ b/test_hub_discovery/test-B-stage1.sh
@@ -25,21 +25,21 @@
 sleep 2
 
 # search output for 10.63.18.1, fail if not found
-face=$(nfd-status -f | grep -F remote=udp4://10.63.18.1)
+face=$(nfdc face list | grep -F remote=udp4://10.63.18.1)
 if [[ -z "$face" ]]; then
   clean_up_nodeB
   exit 1
 fi
 
 # search output for 10.63.18.2, fail if found.
-face=$(nfd-status -f | grep -F remote=udp4://10.63.18.2)
+face=$(nfdc face list | grep -F remote=udp4://10.63.18.2)
 if [[ -n "$face" ]]; then
   clean_up_nodeB
   exit 1
 fi
 
 #search output for 10.63.18.3, fail if found.
-face=$(nfd-status -f | grep -F remote=udp4://10.63.18.3)
+face=$(nfdc face list | grep -F remote=udp4://10.63.18.3)
 if [[ -n "$face" ]]; then
   clean_up_nodeB
   exit 1
diff --git a/test_hub_discovery/test-D-stage2.sh b/test_hub_discovery/test-D-stage2.sh
index c3d95cc..ad2db5a 100755
--- a/test_hub_discovery/test-D-stage2.sh
+++ b/test_hub_discovery/test-D-stage2.sh
@@ -32,21 +32,21 @@
 sleep 3
 
 # search output for 10.63.18.1, fail if found
-face=$(nfd-status -f | grep -F remote=udp4://10.63.18.1)
+face=$(nfdc face list | grep -F remote=udp4://10.63.18.1)
 if [[ -n "$face" ]]; then
   clean_up_nodeC
   exit 1
 fi
 
 # search output for 10.63.18.2, fail if not found.
-face=$(nfd-status -f | grep -F remote=udp4://10.63.18.2)
+face=$(nfdc face list | grep -F remote=udp4://10.63.18.2)
 if [[ -z "$face" ]]; then
   clean_up_nodeC
   exit 1
 fi
 
 #search output for 10.63.18.3, fail if found.
-face=$(nfd-status -f | grep -F remote=udp4://10.63.18.3)
+face=$(nfdc face list | grep -F remote=udp4://10.63.18.3)
 if [[ -n "$face" ]]; then
   clean_up_nodeC
   exit 1
diff --git a/test_hub_discovery/test-D-stage3.sh b/test_hub_discovery/test-D-stage3.sh
index 74ffebd..21bf001 100755
--- a/test_hub_discovery/test-D-stage3.sh
+++ b/test_hub_discovery/test-D-stage3.sh
@@ -32,21 +32,21 @@
 
 sleep 3
 # search output for 10.63.18.1, fail if  found
-face=$(nfd-status -f | grep -F remote=udp4://10.63.18.1)
+face=$(nfdc face list | grep -F remote=udp4://10.63.18.1)
 if [[ -n "$face" ]]; then
   clean_up_nodeC
   exit 1
 fi
 
 # search output for 10.63.18.2, fail if found.
-face=$(nfd-status -f | grep -F remote=udp4://10.63.18.2)
+face=$(nfdc face list | grep -F remote=udp4://10.63.18.2)
 if [[ -n "$face" ]]; then
   clean_up_nodeC
   exit 1
 fi
 
 #search output for 10.63.18.3, fail if not found.
-face=$(nfd-status -f | grep -F remote=udp4://10.63.18.3)
+face=$(nfdc face list | grep -F remote=udp4://10.63.18.3)
 if [[ -z "$face" ]]; then
   clean_up_nodeC
   exit 1
diff --git a/test_interest_aggregation/test_interest_aggregation.py b/test_interest_aggregation/test_interest_aggregation.py
index 8c85b1f..4b1fbe2 100644
--- a/test_interest_aggregation/test_interest_aggregation.py
+++ b/test_interest_aggregation/test_interest_aggregation.py
@@ -72,29 +72,29 @@
 
         #Set NFD to use best-route v1 strategy
         self.startProcess("nfdc",
-            ["nfdc", "set-strategy", "/", "ndn:/localhost/nfd/strategy/best-route/%FD%01"],
+            ["nfdc", "strategy", "set", "/", "/localhost/nfd/strategy/best-route/%FD%01"],
             "-> Setting strategy to best-route v1")
         time.sleep(1)
 
-        #Start ndn-traffic-server to serve ndn:/test-agg, with content delay set to 2000ms
+        #Start ndn-traffic-server to serve /test-agg, with content delay set to 2000ms
         serverConfigurationFile = os.path.abspath(
             "test_interest_aggregation/test-traffic-server.conf")
         self.startProcess("ndn-traffic-server-1",
             ["ndn-traffic-server", serverConfigurationFile],
-            "-> Starting Traffic Server 1 (Prefix=ndn:/test-agg, ContentDelay=2000ms)")
+            "-> Starting Traffic Server 1 (Prefix=/test-agg, ContentDelay=2000ms)")
         time.sleep(1)
 
-        #Start two instances of ndnpeek to request ndn:/test-agg/A. Wait until they
+        #Start two instances of ndnpeek to request /test-agg/A. Wait until they
         #terminate. Fail if either is unanswered.
         peekOutputFile = os.path.abspath(self.logFolder + "test-peek-output-1.txt")
         self.startProcess("ndnpeek-1",
-            ["ndnpeek", "ndn:/test-agg/A"],
-            "-> Starting Peek Client 1 (Prefix=ndn:/test-agg/A)",
+            ["ndnpeek", "/test-agg/A"],
+            "-> Starting Peek Client 1 (Prefix=/test-agg/A)",
             outputFile=peekOutputFile)
         peekOutputFile = os.path.abspath(self.logFolder + "test-peek-output-2.txt")
         self.startProcess("ndnpeek-2",
-            ["ndnpeek", "ndn:/test-agg/A"],
-            "-> Starting Peek Client 2 (Prefix=ndn:/test-agg/A)",
+            ["ndnpeek", "/test-agg/A"],
+            "-> Starting Peek Client 2 (Prefix=/test-agg/A)",
             outputFile=peekOutputFile)
         self.waitForProcessCompletion("ndnpeek-1", 10)
         self.waitForProcessCompletion("ndnpeek-2", 10)
@@ -107,24 +107,24 @@
         self.checkAndReportFailure("ndnpeek-2", "Peek Client 2")
         self.checkServerReceiveCount("ndn-traffic-server-1", "Traffic Server 1", 1)
 
-        #Start ndn-traffic-server to serve ndn:/test-agg, with content delay set to 2000ms
+        #Start ndn-traffic-server to serve /test-agg, with content delay set to 2000ms
         self.startProcess("ndn-traffic-server-2",
             ["ndn-traffic-server", serverConfigurationFile],
-            "-> Starting Traffic Server 2 (Prefix=ndn:/test-agg, ContentDelay=2000ms)")
+            "-> Starting Traffic Server 2 (Prefix=/test-agg, ContentDelay=2000ms)")
         time.sleep(1)
 
-        #Start ndnpeek to request ndn:/test-agg/B ChildSelector=leftmost, and another
-        #instance to request ndn:/test-agg/B ChildSelector=rightmost. Wait until they terminate.
+        #Start ndnpeek to request /test-agg/B ChildSelector=leftmost, and another
+        #instance to request /test-agg/B ChildSelector=rightmost. Wait until they terminate.
         #Fail if either is unanswered.
         peekOutputFile = os.path.abspath(self.logFolder + "test-peek-output-3.txt")
         self.startProcess("ndnpeek-3",
-            ["ndnpeek", "ndn:/test-agg/B"],
-            "-> Starting Peek Client 3 (Prefix=ndn:/test-agg/B, ChildSelector=leftmost)",
+            ["ndnpeek", "/test-agg/B"],
+            "-> Starting Peek Client 3 (Prefix=/test-agg/B, ChildSelector=leftmost)",
             outputFile=peekOutputFile)
         peekOutputFile = os.path.abspath(self.logFolder + "test-peek-output-4.txt")
         self.startProcess("ndnpeek-4",
-            ["ndnpeek", "-r", "ndn:/test-agg/B"],
-            "-> Starting Peek Client 4 (Prefix=ndn:/test-agg/B, ChildSelector=rightmost)",
+            ["ndnpeek", "-r", "/test-agg/B"],
+            "-> Starting Peek Client 4 (Prefix=/test-agg/B, ChildSelector=rightmost)",
             outputFile=peekOutputFile)
         self.waitForProcessCompletion("ndnpeek-3", 10)
         self.waitForProcessCompletion("ndnpeek-4", 10)
@@ -137,24 +137,24 @@
         self.checkAndReportFailure("ndnpeek-4", "Peek Client 4")
         self.checkServerReceiveCount("ndn-traffic-server-2", "Traffic Server 2", 2)
 
-        #Start ndn-traffic-server to serve ndn:/test-agg, with content delay set to 2000ms
+        #Start ndn-traffic-server to serve /test-agg, with content delay set to 2000ms
         self.startProcess("ndn-traffic-server-3",
             ["ndn-traffic-server", serverConfigurationFile],
-            "-> Starting Traffic Server 3 (Prefix=ndn:/test-agg, ContentDelay=2000ms)")
+            "-> Starting Traffic Server 3 (Prefix=/test-agg, ContentDelay=2000ms)")
         time.sleep(1)
 
-        #Start ndnpeek to request ndn:/test-agg/C InterestLifetime=6000ms, and another
-        #instance to request ndn:/test-agg/C. InterestLifetime=8000ms. Wait until they terminate.
+        #Start ndnpeek to request /test-agg/C InterestLifetime=6000ms, and another
+        #instance to request /test-agg/C. InterestLifetime=8000ms. Wait until they terminate.
         #Fail if either is unanswered.
         peekOutputFile = os.path.abspath(self.logFolder + "test-peek-output-5.txt")
         self.startProcess("ndnpeek-5",
-            ["ndnpeek", "--lifetime", "6000", "ndn:/test-agg/C"],
-            "-> Starting Peek Client 5 (Prefix=ndn:/test-agg/C, InterestLifetime=6000ms)",
+            ["ndnpeek", "--lifetime", "6000", "/test-agg/C"],
+            "-> Starting Peek Client 5 (Prefix=/test-agg/C, InterestLifetime=6000ms)",
             outputFile=peekOutputFile)
         peekOutputFile = os.path.abspath(self.logFolder + "test-peek-output-6.txt")
         self.startProcess("ndnpeek-6",
-            ["ndnpeek", "--lifetime", "8000", "ndn:/test-agg/C"],
-            "-> Starting Peek Client 6 (Prefix=ndn:/test-agg/C, InterestLifetime=8000ms)",
+            ["ndnpeek", "--lifetime", "8000", "/test-agg/C"],
+            "-> Starting Peek Client 6 (Prefix=/test-agg/C, InterestLifetime=8000ms)",
             outputFile=peekOutputFile)
         self.waitForProcessCompletion("ndnpeek-5", 10)
         self.waitForProcessCompletion("ndnpeek-6", 10)
diff --git a/test_interest_loop/README.md b/test_interest_loop/README.md
index 87d8941..ba34047 100644
--- a/test_interest_loop/README.md
+++ b/test_interest_loop/README.md
@@ -6,5 +6,5 @@
     On host C, create UDP face to host A, and add nexthop for `ndn:/test-loop` toward this face.
 3.  On every host, set strategy of `ndn:/test-loop` to *strategy under test*.
 4.  On host A, execute ndn-traffic-client to send 100 Interests to `ndn:/test-loop/A/<random>`.
-5.  On every host, execute nfd-status to see face counters.  
+5.  On every host, execute "nfdc face list" to see face counters.
     Fail if NInInterests or NOutInterests counter of a UDP face is greater than 200.
diff --git a/test_interest_loop/add-nexthop.sh b/test_interest_loop/add-nexthop.sh
index 26dd4ce..b95a9fd 100755
--- a/test_interest_loop/add-nexthop.sh
+++ b/test_interest_loop/add-nexthop.sh
@@ -1,5 +1,6 @@
 #!/usr/bin/env bash
 ipaddr=$1
 strategy=$2
-nfdc add-nexthop ndn:/test-loop udp4://$ipaddr || exit 1
-nfdc set-strategy ndn:/test-loop $strategy || exit 1
+nfdc face create udp4://$ipaddr || exit 1
+nfdc route add /test-loop udp4://$ipaddr || exit 1
+nfdc strategy set /test-loop $strategy || exit 1
diff --git a/test_interest_loop/interest-loop-test.sh b/test_interest_loop/interest-loop-test.sh
index 9df944c..bb4f853 100755
--- a/test_interest_loop/interest-loop-test.sh
+++ b/test_interest_loop/interest-loop-test.sh
@@ -49,20 +49,20 @@
 echo "using ndn-traffic client to send 100 interests..."
 ndn-traffic -c 100 -i 200 NDNTrafficClient.conf > $workdir/logs/${logprefix}_client.log 2>&1
 
-# collect nfd-status from B and C
-echo "collecting nfd-status from B and C..."
-ssh $CTRL_B "nfd-status -f > $workdir/logs/${logprefix}_nfd-status-B.log 2>&1" || exit 4
-scp $CTRL_B:$workdir/logs/${logprefix}_nfd-status-B.log  $workdir/logs/${logprefix}_nfd-status-B.log
-ssh $CTRL_C "nfd-status -f > $workdir/logs/${logprefix}_nfd-status-C.log 2>&1" || exit 4
-scp $CTRL_C:$workdir/logs/${logprefix}_nfd-status-C.log  $workdir/logs/${logprefix}_nfd-status-C.log
-nfd-status -f > $workdir/logs/${logprefix}_nfd-status-A.log 2>&1 || exit 4
+# collect nfdc face list from B and C
+echo "collecting nfdc face list from B and C..."
+ssh $CTRL_B "nfdc face list > $workdir/logs/${logprefix}_nfdc-face-list-B.log 2>&1" || exit 4
+scp $CTRL_B:$workdir/logs/${logprefix}_nfdc-face-list-B.log  $workdir/logs/${logprefix}_nfdc-face-list-B.log
+ssh $CTRL_C "nfdc face list > $workdir/logs/${logprefix}_nfdc-face-list-C.log 2>&1" || exit 4
+scp $CTRL_C:$workdir/logs/${logprefix}_nfdc-face-list-C.log  $workdir/logs/${logprefix}_nfdc-face-list-C.log
+nfdc face list > $workdir/logs/${logprefix}_nfdc-face-list-A.log 2>&1 || exit 4
 
 # analyze results
 echo "analyzing results..."
 for host in {A..C}
 do
     echo "Host $host:"
-    cat $workdir/logs/${logprefix}_nfd-status-$host.log | grep udp4 | while read line
+    cat $workdir/logs/${logprefix}_nfdc-face-list-$host.log | grep udp4 | while read line
     do
         ini=$(echo "$line" | grep -Po "in={.*?i" | sed 's/in={//g' | sed 's/i//g')
         outi=$(echo "$line" | grep -Po "out={.*?i" | sed 's/out={//g' | sed 's/i//g')
diff --git a/test_interest_loop/test_interest_loop.py b/test_interest_loop/test_interest_loop.py
index c22b146..229f338 100644
--- a/test_interest_loop/test_interest_loop.py
+++ b/test_interest_loop/test_interest_loop.py
@@ -17,7 +17,7 @@
         1 : "Counter for incoming interest is greater than 200.",
         2 : "Counter for outgoing interest is greater than 200.",
         3 : "add-nexthop failed",
-        4 : "nfd-status failed",
+        4 : "nfdc face list failed",
     }
 
     def setUp(self):
diff --git a/test_linkfail/start.sh b/test_linkfail/start.sh
index 6f59c15..5d8c65a 100755
--- a/test_linkfail/start.sh
+++ b/test_linkfail/start.sh
@@ -12,11 +12,13 @@
 sleep 1
 > logs/${LOGPREFIX}_nfdc.log
 
-nfdc set-strategy / $STRATEGY &>> logs/${LOGPREFIX}_nfdc.log
-ssh $CTRL_B "nfdc set-strategy / $STRATEGY" &>> logs/${LOGPREFIX}_nfdc.log
-ssh $CTRL_C "nfdc set-strategy / $STRATEGY" &>> logs/${LOGPREFIX}_nfdc.log
+nfdc strategy set / $STRATEGY &>> logs/${LOGPREFIX}_nfdc.log
+ssh $CTRL_B "nfdc strategy set / $STRATEGY" &>> logs/${LOGPREFIX}_nfdc.log
+ssh $CTRL_C "nfdc strategy set / $STRATEGY" &>> logs/${LOGPREFIX}_nfdc.log
 
-ssh $CTRL_C "nfdc register -c 10 /B udp4://$IP4_B1" &>> logs/${LOGPREFIX}_nfdc.log
-nfdc register -c 10 /B udp4://$IP4_B1 &>> logs/${LOGPREFIX}_nfdc.log
-nfdc register -c 20 /B udp4://$IP4_C1 &>> logs/${LOGPREFIX}_nfdc.log
-
+ssh $CTRL_C "nfdc face create udp4://$IP4_B1" &>> logs/${LOGPREFIX}_nfdc.log
+ssh $CTRL_C "nfdc route add /B udp4://$IP4_B1 cost 10" &>> logs/${LOGPREFIX}_nfdc.log
+nfdc face create udp4://$IP4_B1 &>> logs/${LOGPREFIX}_nfdc.log
+nfdc face create udp4://$IP4_C1 &>> logs/${LOGPREFIX}_nfdc.log
+nfdc route add /B udp4://$IP4_B1 cost 10 &>> logs/${LOGPREFIX}_nfdc.log
+nfdc route add /B udp4://$IP4_C1 cost 20 &>> logs/${LOGPREFIX}_nfdc.log
diff --git a/test_localhop/localhop-test.sh b/test_localhop/localhop-test.sh
index 549b8d1..f83d575 100755
--- a/test_localhop/localhop-test.sh
+++ b/test_localhop/localhop-test.sh
@@ -31,7 +31,8 @@
 sleep 1
 
 # On A, add nexthop of `ndn:/localhop` to B
-nfdc add-nexthop ndn:/localhop udp4://$b_ipaddr
+nfdc face create udp4://$b_ipaddr
+nfdc route add ndn:/localhop udp4://$b_ipaddr
 if [[ $? -ne 0 ]]
 then
     echo "Failed to add nexthop of ndn:/localhop"
@@ -40,7 +41,8 @@
 fi
 
 # On B, add nexthop of `ndn:/localhop` to C
-ssh $CTRL_B "nfdc add-nexthop ndn:/localhop udp4://$c_ipaddr"
+ssh $CTRL_B "nfdc face create udp4://$c_ipaddr"
+ssh $CTRL_B "nfdc route add ndn:/localhop udp4://$c_ipaddr"
 
 # On C, start ndn-traffic-server
 echo "starting ndn-traffic-server on host C..."
diff --git a/test_localhost_scope/README.md b/test_localhost_scope/README.md
index 52d95be..1b1d965 100644
--- a/test_localhost_scope/README.md
+++ b/test_localhost_scope/README.md
@@ -20,9 +20,9 @@
    Redirect netcat output into a file.
 2. On host B, invoke nfdc to create face tcp://hostA:6363.
    Fail if nfdc fails.
-3. On host B, invoke nfdc to add nexthop for `ndn:/` toward face created in step 8.
+3. On host B, invoke nfdc to add route for `ndn:/` toward face created in step 8.
    Fail if nfdc fails.
-4. On host B, invoke nfdc to add nexthop for `ndn:/localhost/test-out` toward face created in step 8.
+4. On host B, invoke nfdc to add route for `ndn:/localhost/test-out` toward face created in step 8.
    Do not fail if nfdc fails (forwarder MAY reject prefix registration that violates scope control).
 5. On host B, invoke ndnpeek to request `ndn:/localhost/test-out/B/c39b6fed4ce4464ea136062f80002c7c`.
 6. On host B, invoke ndnpeek to request `ndn:/localhost/C/c39b6fed4ce4464ea136062f80002c7c`.
diff --git a/test_localhost_scope/out-B.sh b/test_localhost_scope/out-B.sh
index d0ec56a..31f9d3e 100755
--- a/test_localhost_scope/out-B.sh
+++ b/test_localhost_scope/out-B.sh
@@ -1,10 +1,12 @@
 #!/bin/bash
 FACEURI=$1
 
-if ! output=$(nfdc add-nexthop ndn:/ $FACEURI)
+nfdc face create $FACEURI || exit 1
+
+if ! output=$(nfdc route add ndn:/ $FACEURI)
 then
   return 2
 fi
 
-output=$(nfdc add-nexthop ndn:/localhost/test-out $FACEURI 2>&1)
+output=$(nfdc route add ndn:/localhost/test-out $FACEURI 2>&1)
 return 0
diff --git a/test_localhost_scope/out-master.sh b/test_localhost_scope/out-master.sh
index 0e345a1..c26a0ac 100755
--- a/test_localhost_scope/out-master.sh
+++ b/test_localhost_scope/out-master.sh
@@ -18,7 +18,7 @@
 nc -vul 6363 > $workdir/logs/out/netcat.log 2>&1 &
 sleep 1
 
-# add nexthop of ndn:/ and ndn:/localhost/test-out to hostA
+# add route to hostA for ndn:/ and ndn:/localhost/test-out
 if ! status=$(ssh $CTRL_B "source $workdir/out-B.sh udp4://$IP4_A1" 2>&1)
 then
     echo "Error message from host B:"
diff --git a/test_mobility_link/mobility-link-test.sh b/test_mobility_link/mobility-link-test.sh
index e658b01..64c7e59 100755
--- a/test_mobility_link/mobility-link-test.sh
+++ b/test_mobility_link/mobility-link-test.sh
@@ -58,8 +58,13 @@
   sudo nfd &> $workdir/logs/nfd.log &"
 sleep 1
 
+# Create faces
+ssh $CTRL_C "nfdc face create udp4://$IP4_B1"
+ssh $CTRL_B "nfdc face create udp4://$IP4_A1"
+nfdc face create udp4://$IP4_D1
+
 # C: Register default route toward B
-ssh $CTRL_C "nfdc register / udp4://$IP4_B1"
+ssh $CTRL_C "nfdc route add / udp4://$IP4_B1"
 if [[ $? -ne 0 ]]
 then
   echo "Failed to create default route on C toward B"
@@ -68,7 +73,7 @@
 fi
 
 # B: Register route /ucla toward A
-ssh $CTRL_B "nfdc register /ucla udp4://$IP4_A1"
+ssh $CTRL_B "nfdc route add /ucla udp4://$IP4_A1"
 if [[ $? -ne 0 ]]
 then
   echo "Failed to create route /ucla on B toward A"
@@ -77,7 +82,7 @@
 fi
 
 # A: Register route /ucla/cs toward D
-nfdc register /ucla/cs udp4://$IP4_D1
+nfdc route add /ucla/cs udp4://$IP4_D1
 if [[ $? -ne 0 ]]
 then
   echo "Failed to create route /ucla/cs on A toward D"
diff --git a/test_multicast/multicast-test.sh b/test_multicast/multicast-test.sh
index 11295ee..7b1d9bd 100755
--- a/test_multicast/multicast-test.sh
+++ b/test_multicast/multicast-test.sh
@@ -28,8 +28,8 @@
 # start nfd and add nexthop of ndn:/test-mcast to UDP multicast face
 sudo nfd &> $workdir/logs/$1/nfd.log &
 sleep 3
-faceid=$(nfd-status -f | grep $a_ipaddr | grep -Po 'faceid=.*? ' | sed 's/faceid=//' | sed 's/ //')
-nfdc add-nexthop ndn:/test-mcast $faceid
+faceid=$(nfdc face list | grep $a_ipaddr | grep -Po 'faceid=.*? ' | sed 's/faceid=//' | sed 's/ //')
+nfdc route add ndn:/test-mcast $faceid
 
 # use ndnpeek to test multicast feature
 response=$(ndnpeek -p ndn:/test-mcast/B/1)
diff --git a/test_multicast_strategy/README.md b/test_multicast_strategy/README.md
index bd25d97..965cf53 100644
--- a/test_multicast_strategy/README.md
+++ b/test_multicast_strategy/README.md
@@ -13,5 +13,5 @@
 7.  On host D, execute ndn-traffic-client to send 100 Interest to `ndn:/test-mcast/A/<random>`.
 8.  On host B,C, stop ndn-traffic-server.
     Fail if total served Interests on either host is less than 80.
-9.  On host D, invoke nfd-status to observe counters on the face created in step 6.
+9.  On host D, invoke nfdc to observe counters on the face created in step 6.
     Fail if total received Datas on this face is greater than 120 (because A should not forward the second copy of Data to D after PIT entry is satisfied).
diff --git a/test_multicast_strategy/test.sh b/test_multicast_strategy/test.sh
index 4b20fb6..4f46394 100755
--- a/test_multicast_strategy/test.sh
+++ b/test_multicast_strategy/test.sh
@@ -32,13 +32,16 @@
 
 # set up forwarding on A
 echo "setting up forwarding on A..."
-nfdc set-strategy ndn:/test-mcast ndn:/localhost/nfd/strategy/multicast
-nfdc add-nexthop -c 10 ndn:/test-mcast udp4://$IP4_B1
-nfdc add-nexthop -c 20 ndn:/test-mcast udp4://$IP4_C1
+nfdc strategy set ndn:/test-mcast ndn:/localhost/nfd/strategy/multicast
+nfdc face create udp4://$IP4_B1
+nfdc face create udp4://$IP4_C1
+nfdc route add ndn:/test-mcast udp4://$IP4_B1 cost 10
+nfdc route add ndn:/test-mcast udp4://$IP4_C1 cost 20
 
 # set up forwarding on D
 echo "setting up forwarding on D..."
-ssh $CTRL_D "nfdc add-nexthop ndn:/test-mcast udp4://$IP4_A2"
+ssh $CTRL_D "nfdc face create udp4://$IP4_A2"
+ssh $CTRL_D "nfdc route add ndn:/test-mcast udp4://$IP4_A2"
 
 # run ndn-traffic client on D
 echo "running ndn-traffic client on D..."
@@ -53,10 +56,9 @@
 echo "collecting data from B, C and D..."
 scp $CTRL_B:$workdir/logs/serverB.log $workdir/logs/serverB.log
 scp $CTRL_C:$workdir/logs/serverC.log $workdir/logs/serverC.log
-ssh $CTRL_D "nfd-status -f > $workdir/logs/nfd-status-D.log"
-scp $CTRL_D:$workdir/logs/nfd-status-D.log $workdir/logs/nfd-status-D.log
+ssh $CTRL_D "nfdc face list > $workdir/logs/nfdc-face-list-D.log"
+scp $CTRL_D:$workdir/logs/nfdc-face-list-D.log $workdir/logs/nfdc-face-list-D.log
 scp $CTRL_D:$workdir/logs/client.log $workdir/logs/client.log
-nfd-status > $workdir/logs/nfd-status-A.log
 
 # analyze result
 echo "analyzing result"
@@ -74,7 +76,7 @@
     clean_up
     exit 2
 fi
-cat $workdir/logs/nfd-status-D.log | grep udp4 | while read line
+cat $workdir/logs/nfdc-face-list-D.log | grep udp4 | while read line
 do
     ind=$(echo $line | grep -Po "i .*?d} out" | sed 's/i //g' | sed 's/d} out//g')
     if [[ $ind -gt 120 ]]
diff --git a/test_nexthopfaceid/README.md b/test_nexthopfaceid/README.md
index aff116b..0280bd5 100644
--- a/test_nexthopfaceid/README.md
+++ b/test_nexthopfaceid/README.md
@@ -7,11 +7,11 @@
 ## Steps
 
 1.  Start NFD on A, B, and C.
-2.  On A, create routes for prefix ndn:/P toward B and C. The cost toward B is lower than the cost toward C.
-3.  On B, start ndn-traffic-server on ndn:/P, serving payload "BBBBBBBB".
-4.  On C, start ndn-traffic-server on ndn:/P, serving payload "CCCCCCCC".
-5.  On A, execute a consumer to enable local fields and then express an Interest for ndn:/P/1, without NextHopFaceId tag. Expect Data with payload "BBBBBBBB".
-6.  On A, execute a consumer to enable local fields and then express an Interest for ndn:/P/2, with NextHopFaceId=faceB. Expect Data with payload "BBBBBBBB".
-7.  On A, execute a consumer to enable local fields and then express an Interest for ndn:/P/3, with NextHopFaceId=faceC. Expect Data with payload "CCCCCCCC".
-8.  On A, execute a consumer to enable local fields and then express an Interest for ndn:/P/4, with NextHopFaceId=null-face. Expect either timeout or Nack.
-9.  On A, execute a consumer to disable local fields and then express an Interest for ndn:/P/5, with NextHopFaceId=faceC. Expect either timeout or Data with payload "BBBBBBBB".
+2.  On A, create routes for prefix /P toward B and C. The cost toward B is lower than the cost toward C.
+3.  On B, start ndn-traffic-server on /P, serving payload "BBBBBBBB".
+4.  On C, start ndn-traffic-server on /P, serving payload "CCCCCCCC".
+5.  On A, execute a consumer to enable local fields and then express an Interest for /P/1, without NextHopFaceId tag. Expect Data with payload "BBBBBBBB".
+6.  On A, execute a consumer to enable local fields and then express an Interest for /P/2, with NextHopFaceId=faceB. Expect Data with payload "BBBBBBBB".
+7.  On A, execute a consumer to enable local fields and then express an Interest for /P/3, with NextHopFaceId=faceC. Expect Data with payload "CCCCCCCC".
+8.  On A, execute a consumer to enable local fields and then express an Interest for /P/4, with NextHopFaceId=null-face. Expect either timeout or Nack.
+9.  On A, execute a consumer to disable local fields and then express an Interest for /P/5, with NextHopFaceId=faceC. Expect either timeout or Data with payload "BBBBBBBB".
diff --git a/test_nexthopfaceid/nexthopfaceid-test.sh b/test_nexthopfaceid/nexthopfaceid-test.sh
index d4b22b7..93677f8 100755
--- a/test_nexthopfaceid/nexthopfaceid-test.sh
+++ b/test_nexthopfaceid/nexthopfaceid-test.sh
@@ -21,90 +21,99 @@
 
 echo "starting nfd on host B..."
 ssh $CTRL_B "mkdir -p $workdir/logs;\
-    sudo nfd &> $workdir/logs/nfd.log &"
+  sudo nfd &> $workdir/logs/nfd.log &"
 sleep 1
 
 echo "starting nfd on host C..."
 ssh $CTRL_C "mkdir -p $workdir/logs;\
-    sudo nfd &> $workdir/logs/nfd.log &"
+  sudo nfd &> $workdir/logs/nfd.log &"
 sleep 1
 
-# A: Create route for prefix ndn:/P toward B with cost 10
-nfdc register -c 10 ndn:/P udp4://$IP4_B1
+# Create faces
+nfdc face create udp4://$IP4_B1
+nfdc face create udp4://$IP4_C1
+
+# A: Create route for prefix /P toward B with cost 10
+nfdc route add /P udp4://$IP4_B1 cost 10
 if [[ $? -ne 0 ]]
 then
-    echo "Failed to create route for ndn:/P toward host B"
-    clean_up
-    exit 1
+  echo "Failed to create route for /P toward host B"
+  clean_up
+  exit 1
 fi
 
-# A: Create route for prefix ndn:/P toward C with cost 20
-nfdc register -c 20 ndn:/P udp4://$IP4_C1
+# A: Create route for prefix /P toward C with cost 20
+nfdc route add /P udp4://$IP4_C1 cost 20
 if [[ $? -ne 0 ]]
 then
-    echo "Failed to create route for ndn:/P toward host C"
-    clean_up
-    exit 1
+  echo "Failed to create route for /P toward host C"
+  clean_up
+  exit 1
 fi
 
 # Get face IDs on A
-faceB=$(nfdc face list | grep "udp4://$IP4_B1" | cut -d" " -f3 | cut -d"=" -f2)
-faceC=$(nfdc face list | grep "udp4://$IP4_C1" | cut -d" " -f3 | cut -d"=" -f2)
+faceB=$(nfdc face list | grep "udp4://$IP4_B1" | cut -d" " -f1 | cut -d"=" -f2)
+faceC=$(nfdc face list | grep "udp4://$IP4_C1" | cut -d" " -f1 | cut -d"=" -f2)
 
-# B: Start ndn-traffic-server serving "BBBBBBBB" on ndn:/P
+# B: Start ndn-traffic-server serving "BBBBBBBB" on /P
 echo "starting ndn-traffic-server on host B..."
 ssh $CTRL_B "ndn-traffic-server $workdir/NDNTrafficServer-B.conf > $workdir/logs/server.log 2>&1 &"
 
-# C: Start ndn-traffic-server serving "CCCCCCCC" on ndn:/P
+# C: Start ndn-traffic-server serving "CCCCCCCC" on /P
 echo "starting ndn-traffic-server on host C..."
 ssh $CTRL_C "ndn-traffic-server $workdir/NDNTrafficServer-C.conf > $workdir/logs/server.log 2>&1 &"
 
-# A: Start consumer to enable local fields and express Interest for ndn:/P/1 w/o NextHopFaceId
+# A: Start consumer to enable local fields and express Interest for /P/1 w/o NextHopFaceId
 #    Expect Data w/ payload "BBBBBBBB"
-echo "From A, sending Interest for ndn:/P/1 (LocalFields=enabled)..."
+echo "From A, sending Interest for /P/1 (LocalFields=enabled)..."
 output=$(test-nexthopfaceid-consumer /P/1 t -1)
 if [[ $output != "BBBBBBBB" ]]; then
-  echo "Interest ndn:/P/1 not answered with Data containing payload 'BBBBBBBB'"
+  echo "Interest /P/1 not answered with Data containing payload 'BBBBBBBB'"
+  echo "Actual: $output"
   clean_up
   exit 2
 fi
 
-# A: Start consumer to enable local fields and express Interest for ndn:/P/2 w/ NextHopFaceId=faceB
+# A: Start consumer to enable local fields and express Interest for /P/2 w/ NextHopFaceId=faceB
 #    Expect Data w/ payload "BBBBBBBB"
-echo "From A, sending Interest for ndn:/P/2 (LocalFields=enabled, NextHopFaceId=faceB)..."
+echo "From A, sending Interest for /P/2 (LocalFields=enabled, NextHopFaceId=faceB)..."
 output=$(test-nexthopfaceid-consumer /P/2 t $faceB)
 if [[ $output != "BBBBBBBB" ]]; then
-  echo "Interest ndn:/P/2 not answered with Data containing payload 'BBBBBBBB'"
+  echo "Interest /P/2 not answered with Data containing payload 'BBBBBBBB'"
+  echo "Actual: $output"
   clean_up
   exit 3
 fi
 
-# A: Start consumer to enable local fields and express Interest for ndn:/P/3 w/ NextHopFaceId=faceC
+# A: Start consumer to enable local fields and express Interest for /P/3 w/ NextHopFaceId=faceC
 #    Expect Data w/ payload "CCCCCCCC"
-echo "From A, sending Interest for ndn:/P/3 (LocalFields=enabled, NextHopFaceId=faceC)..."
+echo "From A, sending Interest for /P/3 (LocalFields=enabled, NextHopFaceId=faceC)..."
 output=$(test-nexthopfaceid-consumer /P/3 t $faceC)
 if [[ $output != "CCCCCCCC" ]]; then
-  echo "Interest ndn:/P/3 not answered with Data containing payload 'CCCCCCCC'"
+  echo "Interest /P/3 not answered with Data containing payload 'CCCCCCCC'"
+  echo "Actual: $output"
   clean_up
   exit 4
 fi
 
-# A: Start consumer to enable local fields and express Interest for ndn:/P/4 w/ NextHopFaceId=null-face
+# A: Start consumer to enable local fields and express Interest for /P/4 w/ NextHopFaceId=null-face
 #    Expect either timeout or Nack
-echo "From A, sending Interest for ndn:/P/4 (LocalFields=enabled, NextHopFaceId=null-face)..."
+echo "From A, sending Interest for /P/4 (LocalFields=enabled, NextHopFaceId=null-face)..."
 output=$(test-nexthopfaceid-consumer /P/4 t 0)
 if [[ $output != "Timeout" && $output != "Nack" ]]; then
-  echo "Interest ndn:/P/4 was not answered with a Nack and did not time out"
+  echo "Interest /P/4 was not answered with a Nack and did not time out"
+  echo "Actual: $output"
   clean_up
   exit 5
 fi
 
-# A: Start consumer to disable local fields and express Interest for ndn:/P/5w/ NextHopFaceId=faceC
+# A: Start consumer to disable local fields and express Interest for /P/5w/ NextHopFaceId=faceC
 #    Expect either timeout or Data w/ payload "BBBBBBBB"
-echo "From A, sending Interest for ndn:/P/5 (LocalFields=disabled, NextHopFaceId=faceC)..."
+echo "From A, sending Interest for /P/5 (LocalFields=disabled, NextHopFaceId=faceC)..."
 output=$(test-nexthopfaceid-consumer /P/5 f $faceC)
 if [[ $output != "Timeout" && $output != "BBBBBBBB" ]]; then
-  echo "Interest ndn:/P/5 was not answered with Data containing payload 'BBBBBBBB' and did not time out"
+  echo "Interest /P/5 was not answered with Data containing payload 'BBBBBBBB' and did not time out"
+  echo "Actual: $output"
   clean_up
   exit 6
 fi
diff --git a/test_nexthopfaceid/test_nexthopfaceid.py b/test_nexthopfaceid/test_nexthopfaceid.py
index 5dc2b8a..7b56df9 100644
--- a/test_nexthopfaceid/test_nexthopfaceid.py
+++ b/test_nexthopfaceid/test_nexthopfaceid.py
@@ -27,11 +27,11 @@
         print "Test script return value:", ret
         errormsg = {
             1 : "Failed to create required routes",
-            2 : "Interest ndn:/P/1 not answered with Data containing payload 'BBBBBBBB'",
-            3 : "Interest ndn:/P/2 not answered with Data containing payload 'BBBBBBBB'",
-            4 : "Interest ndn:/P/3 not answered with Data containing payload 'CCCCCCCC'",
-            5 : "Interest ndn:/P/4 was not answered with a Nack and did not time out",
-            6 : "Interest ndn:/P/5 was not answered with Data containing payload 'BBBBBBBB' and did not time out",
+            2 : "Interest /P/1 not answered with Data containing payload 'BBBBBBBB'",
+            3 : "Interest /P/2 not answered with Data containing payload 'BBBBBBBB'",
+            4 : "Interest /P/3 not answered with Data containing payload 'CCCCCCCC'",
+            5 : "Interest /P/4 was not answered with a Nack and did not time out",
+            6 : "Interest /P/5 was not answered with Data containing payload 'BBBBBBBB' and did not time out",
         }
         if (ret != 0):
             self.fail(errormsg[ret])
diff --git a/test_nrd/README.md b/test_nrd/README.md
index a428080..2fd41a8 100644
--- a/test_nrd/README.md
+++ b/test_nrd/README.md
@@ -2,8 +2,8 @@
 
 1. Modify $HOME/.ndn/client.conf to choose "protocol=nrd-0.1".
 2. Start NFD.
-3. Run nfd-status to obtain FIB.
+3. Run nfdc to obtain FIB.
 4. Start ndn-traffic-server; configuration has one or more non-overlapping prefixes.
-5. Run nfd-status to obtain FIB. Compare new FIB to the FIB from step 3, and determine whether FIB entry is inserted
+5. Run nfdc to obtain FIB. Compare new FIB to the FIB from step 3, and determine whether FIB entry is inserted
 6. Stop ndn-traffic-server.
-7. Run nfd-status to obtain FIB. Compare new FIB to the FIB from step 5, and determine whether FIB entry is deleted
+7. Run nfdc to obtain FIB. Compare new FIB to the FIB from step 5, and determine whether FIB entry is deleted
diff --git a/test_nrd/nrd-test.sh b/test_nrd/nrd-test.sh
index 83407fb..c273628 100755
--- a/test_nrd/nrd-test.sh
+++ b/test_nrd/nrd-test.sh
@@ -11,7 +11,7 @@
 
 # check fib before server starts
 echo "checking fib before server starts..."
-fib=$(nfd-status -b)
+fib=$(nfdc fib list)
 res=$(echo $fib | grep '/test-nrd/A' | wc -l)
 if [[ $res -ne 0 ]]
 then
@@ -33,7 +33,7 @@
 
 # check fib after server starts
 echo "checking fib after server starts..."
-fib=$(nfd-status -b)
+fib=$(nfdc fib list)
 res=$(echo $fib | grep '/test-nrd/A' | wc -l)
 if [[ $res -ne 1 ]]
 then
@@ -56,7 +56,7 @@
 
 # check fib after server stops
 echo "checking fib after server stops..."
-fib=$(nfd-status -b)
+fib=$(nfdc fib list)
 res=$(echo $fib | grep '/test-nrd/A' | wc -l)
 if [[ $res -ne 0 ]]
 then
diff --git a/test_permanent_face/permanent-face-test.sh b/test_permanent_face/permanent-face-test.sh
index 9315ee4..ed96e3b 100755
--- a/test_permanent_face/permanent-face-test.sh
+++ b/test_permanent_face/permanent-face-test.sh
@@ -19,10 +19,10 @@
 ssh $CTRL_B "ndnpingserver /B >> $testLogB 2>&1 &"
 
 # on A, create a UDP permanent face toward B
-nfdc create -P udp://$IP4_B1 >> $testLogA
+nfdc face create udp://$IP4_B1 persistency permanent >> $testLogA
 
-# on A, register prefix ndn:/B on the face created in step 3
-nfdc register ndn:/B udp4://$IP4_B1:6363 >> $testLogA
+# on A, add route to ndn:/B on the face created in step 3
+nfdc route add ndn:/B udp4://$IP4_B1:6363 >> $testLogA
 
 # on A, execute ndnping for prefix ndn:/B with client specifier "a" for 10 probes
 pingOutput=$(ndnping ndn:/B -p a -c 10)
diff --git a/test_route_expiration/README.md b/test_route_expiration/README.md
index 8642bc3..0a7fd3e 100644
--- a/test_route_expiration/README.md
+++ b/test_route_expiration/README.md
@@ -11,21 +11,21 @@
       ndn:/R , nexthop=hostC, expiration=10s
       ndn:/S , nexthop=hostB, expiration=3600s
 
-3.  Delay 5 seconds; run nfd-status on A to inspect RIB
+3.  Delay 5 seconds; run nfdc route list on A to inspect RIB
     Expected routes:
       ndn:/P (hostB expires in 3-8s, hostC expires in 13-18s)
       ndn:/Q (hostB expires in 13-18s)
       ndn:/R (hostC expires in 3-8s)
       ndn:/S (hostB expires in >3000s)
 
-4.  Delay 10 seconds; run nfd-status on A to inspect RIB
+4.  Delay 10 seconds; run nfdc route list on A to inspect RIB
     Expected routes:
       ndn:/P (hostC expires in 3-8s)
       ndn:/Q (hostB expires in 3-8s)
       ndn:/R : entry does not exist
       ndn:/S (hostB expires in >3000s)
 
-5.  Delay 8 seconds; run nfd-status on A to inspect RIB
+5.  Delay 8 seconds; run nfdc route list on A to inspect RIB
     Expected routes:
       ndn:/P : entry does not exist
       ndn:/Q : entry does not exist
diff --git a/test_route_expiration/include.sh b/test_route_expiration/include.sh
index 281e8f1..b767926 100644
--- a/test_route_expiration/include.sh
+++ b/test_route_expiration/include.sh
@@ -20,12 +20,19 @@
   exit 0
 }
 
+create_face() {
+  nextHop=$1
+
+  result=$(nfdc face create udp4://$nextHop)
+  echo $result
+}
+
 register() {
   name=$1
   expirationPeriod=$2
   nextHop=$3
 
-  result=$(nfdc register -e $(($expirationPeriod * 1000)) $name udp4://$nextHop | grep -o 'FaceId: [0-9]*' | sed s/'FaceId: '//)
+  result=$(nfdc route add $name udp4://$nextHop expires $(($expirationPeriod * 1000)) | grep -o 'nexthop=[0-9]*' | sed s/'nexthop='//)
   echo $result
 }
 
@@ -35,7 +42,7 @@
   lowerBound=$3
   upperBound=$4
 
-  expirationPeriod=$(nfd-status -r | grep -iF ''$name'' | grep -o 'faceid='$nextHop' ([a-zA-Z0-9 =]*)' |\
+  expirationPeriod=$(nfdc route list | grep -iF ''$name'' | grep 'nexthop='$nextHop'' |\
                      grep -o 'expires=[0-9]*' | sed 's/'expires='//')
 
   if [[ "$expirationPeriod" -lt $lowerBound || "$expirationPeriod" -gt $upperBound ]]; then
@@ -49,7 +56,7 @@
 expect_entry_does_not_exist() {
   name=$1
 
-  count=$(nfd-status -r | grep -c ' $name ')
+  count=$(nfdc route list | grep -c '$name ')
 
   if [[ $count -gt 0 ]]; then
     echo $name "exists past its expected expiration period."
@@ -61,19 +68,19 @@
 
 expect_route_does_not_exist() {
   name=$1
-  faceId=$2
+  nexthop=$2
 
-  count=$(nfd-status -r | grep -iF ''$name'' | grep -c 'faceid='$faceId'')
+  count=$(nfdc route list | grep -iF ''$name'' | grep -c 'nexthop='$nexthop'')
 
   if [[ $count -gt 0 ]]; then
-    echo "Route for $name with FaceId: $faceId exists past its expected expiration period."
+    echo "Route for $name with nexthop=$nexthop exists past its expected expiration period."
     exit 2
   else
-    echo "Route for $name with FaceId: $faceId has expired successfully"
+    echo "Route for $name with nexthop=$nexthop has expired successfully"
   fi
 }
 
 sleep_for_seconds() {
   echo -e "Sleeping for $1 seconds...\n"
   sleep $1
-}
\ No newline at end of file
+}
diff --git a/test_route_expiration/route-expiration-test.sh b/test_route_expiration/route-expiration-test.sh
index 42361a5..4cdd6bf 100755
--- a/test_route_expiration/route-expiration-test.sh
+++ b/test_route_expiration/route-expiration-test.sh
@@ -7,6 +7,11 @@
 
 set_up
 
+echo "Creating faces..."
+
+create_face $HOST_B
+create_face $HOST_C
+
 echo "Registering routes..."
 
 P_TO_B_FACE=$(register "/P" 10 $HOST_B)
diff --git a/test_route_inheritance/route-inheritance-test.sh b/test_route_inheritance/route-inheritance-test.sh
index 2d2f0b7..77e5a8f 100755
--- a/test_route_inheritance/route-inheritance-test.sh
+++ b/test_route_inheritance/route-inheritance-test.sh
@@ -25,7 +25,7 @@
   echo 'Starting nfd on host D' > $testLogD ; sleep 2"
 
 # set multicast strategy for root namespace on A
-nfdc set-strategy / /localhost/nfd/strategy/multicast
+nfdc strategy set prefix / strategy /localhost/nfd/strategy/multicast
 
 # run traffic generator on B,C,D
 ssh $CTRL_B "echo 'starting ndn-traffic-server on B' > $testLogB &\
@@ -35,25 +35,31 @@
 ssh $CTRL_D "echo 'starting ndn-traffic-server on D' > $testLogD &\
   ndn-traffic-server $workDir/NDNTrafficServer.conf &> $logDir/serverD.log &"
 
+echo "setting up faces..."
+
+nfdc face create udp4://$IP4_B1:6363 >> $testLogA
+nfdc face create udp4://$IP4_C1:6363 >> $testLogA
+nfdc face create udp4://$IP4_D1:6363 >> $testLogA
+
 echo "setting up routes..."
 
 # on A, add ndn:/ , nexthop=hostB, CHILD_INHERIT=yes, CAPTURE=no
-nfdc register ndn:/ udp4://$IP4_B1:6363 >> $testLogA
+nfdc route add ndn:/ udp4://$IP4_B1:6363 >> $testLogA
 
 # on A, add ndn:/ , nexthop=hostC, CHILD_INHERIT=no, CAPTURE=no
-nfdc register -I ndn:/ udp4://$IP4_C1:6363 >> $testLogA
+nfdc route add ndn:/ udp4://$IP4_C1:6363 no-inherit >> $testLogA
 
 # on A, add ndn:/A , nexthop=hostB, CHILD_INHERIT=yes, CAPTURE=no
-nfdc register ndn:/A udp4://$IP4_B1:6363 >> $testLogA
+nfdc route add ndn:/A udp4://$IP4_B1:6363 >> $testLogA
 
 # on A, add ndn:/A/B/C , nexthop=hostD, CHILD_INHERIT=yes, CAPTURE=no
-nfdc register ndn:/A/B/C udp4://$IP4_D1:6363 >> $testLogA
+nfdc route add ndn:/A/B/C udp4://$IP4_D1:6363 >> $testLogA
 
 # on A, add ndn:/D , nexthop=hostC, CHILD_INHERIT=yes, CAPTURE=yes
-nfdc register -C ndn:/D udp4://$IP4_C1:6363 >> $testLogA
+nfdc route add ndn:/D udp4://$IP4_C1:6363 capture >> $testLogA
 
 # on A, add ndn:/D , nexthop=hostD, CHILD_INHERIT=yes, CAPTURE=no
-nfdc register ndn:/D udp4://$IP4_D1:6363 >> $testLogA
+nfdc route add ndn:/D udp4://$IP4_D1:6363 >> $testLogA
 
 sleep 2
 
diff --git a/test_tcp_udp_tunnel/tcp-udp-tunnel-test.sh b/test_tcp_udp_tunnel/tcp-udp-tunnel-test.sh
index cd678e6..88419bf 100755
--- a/test_tcp_udp_tunnel/tcp-udp-tunnel-test.sh
+++ b/test_tcp_udp_tunnel/tcp-udp-tunnel-test.sh
@@ -38,7 +38,8 @@
 
 # open a tunnel from host A to host D and set nexthop of ndn:/tunnel-test to D
 echo "preparing tunnel..."
-nfdc add-nexthop ndn:/tunnel-test $1://$ipaddr
+nfdc face create $1://$ipaddr
+nfdc route add ndn:/tunnel-test $1://$ipaddr
 
 # run ndn-traffic client
 echo "running ndn-traffic client..."
