diff --git a/tests-integrated/security/test-validator-config.cpp b/tests-integrated/security/test-validator-config.cpp
index ecde534..aee389a 100644
--- a/tests-integrated/security/test-validator-config.cpp
+++ b/tests-integrated/security/test-validator-config.cpp
@@ -125,7 +125,7 @@
     (boost::filesystem::current_path() / std::string("unit-test-nfd.conf"));
 
 
-  shared_ptr<Face> face = make_shared<Face>();
+  Face face;
   ValidatorConfig validator(face);
   validator.load(CONFIG, CONFIG_PATH.native());
 
@@ -204,7 +204,7 @@
     (boost::filesystem::current_path() / std::string("unit-test-nfd.conf"));
 
 
-  shared_ptr<Face> face = make_shared<Face>();
+  Face face;
   ValidatorConfig validator(face);
   validator.load(CONFIG, CONFIG_PATH.native());
 
@@ -287,7 +287,7 @@
     (boost::filesystem::current_path() / std::string("unit-test-nfd.conf"));
 
 
-  shared_ptr<Face> face = make_shared<Face>();
+  Face face;
   ValidatorConfig validator(face);
   validator.load(CONFIG, CONFIG_PATH.native());
 
@@ -369,7 +369,7 @@
     (boost::filesystem::current_path() / std::string("unit-test-nfd.conf"));
 
 
-  shared_ptr<Face> face = make_shared<Face>();
+  Face face;
   ValidatorConfig validator(face);
   validator.load(CONFIG, CONFIG_PATH.native());
 
@@ -448,7 +448,7 @@
     (boost::filesystem::current_path() / std::string("unit-test-nfd.conf"));
 
 
-  shared_ptr<Face> face = make_shared<Face>();
+  Face face;
   ValidatorConfig validator(face);
   validator.load(CONFIG, CONFIG_PATH.native());
 
@@ -573,7 +573,7 @@
   keyChain.addCertificateAsIdentityDefault(*nldCert);
 
   shared_ptr<Face> face = make_shared<Face>();
-  shared_ptr<Face> face2 = shared_ptr<Face>(new Face(face->ioService()));
+  Face face2(face->ioService());
   Scheduler scheduler(*face->ioService());
 
   scheduler.scheduleEvent(time::seconds(1),
@@ -717,7 +717,7 @@
     (boost::filesystem::current_path() / std::string("unit-test-nfd.conf"));
 
 
-  shared_ptr<Face> face = make_shared<Face>();
+  Face face;
   ValidatorConfig validator(face);
   validator.load(CONFIG, CONFIG_PATH.native());
 
@@ -778,7 +778,7 @@
   keyChain.addCertificateAsIdentityDefault(*nldCert);
 
   shared_ptr<Face> face = make_shared<Face>();
-  shared_ptr<Face> face2 = shared_ptr<Face>(new Face(face->ioService()));
+  Face face2(face->ioService());
   Scheduler scheduler(*face->ioService());
 
   scheduler.scheduleEvent(time::seconds(1),
