diff --git a/tests/unit-tests/security/signature-sha256-with-ecdsa.t.cpp b/tests/unit-tests/security/signature-sha256-with-ecdsa.t.cpp
index e6bd97f..448734b 100644
--- a/tests/unit-tests/security/signature-sha256-with-ecdsa.t.cpp
+++ b/tests/unit-tests/security/signature-sha256-with-ecdsa.t.cpp
@@ -23,15 +23,14 @@
 #include "security/key-chain.hpp"
 #include "security/validator.hpp"
 #include "util/scheduler.hpp"
-#include "identity-management-fixture.hpp"
-#include "../unit-test-time-fixture.hpp"
+
 #include "boost-test.hpp"
+#include "../identity-management-time-fixture.hpp"
 
 namespace ndn {
 namespace tests {
 
-class SignatureSha256EcdsaTimeFixture : public UnitTestTimeFixture
-                                      , public IdentityManagementFixture
+class SignatureSha256EcdsaTimeFixture : public IdentityManagementTimeFixture
 {
 public:
   SignatureSha256EcdsaTimeFixture()
@@ -43,7 +42,8 @@
   Scheduler scheduler;
 };
 
-BOOST_FIXTURE_TEST_SUITE(SecuritySignatureSha256WithEcdsa, SignatureSha256EcdsaTimeFixture)
+BOOST_AUTO_TEST_SUITE(Security)
+BOOST_FIXTURE_TEST_SUITE(TestSignatureSha256WithEcdsa, SignatureSha256EcdsaTimeFixture)
 
 const uint8_t sigInfo[] = {
 0x16, 0x1b, // SignatureInfo
@@ -124,7 +124,6 @@
   BOOST_CHECK(Validator::verifySignature(testData2, *publicKey));
 }
 
-
 BOOST_AUTO_TEST_CASE(InterestSignature)
 {
   Name identityName("/SecurityTestSignatureSha256WithEcdsa/InterestSignature");
@@ -173,7 +172,8 @@
   BOOST_CHECK(Validator::verifySignature(interest2, *publicKey));
 }
 
-BOOST_AUTO_TEST_SUITE_END()
+BOOST_AUTO_TEST_SUITE_END() // TestSignatureSha256WithEcdsa
+BOOST_AUTO_TEST_SUITE_END() // Security
 
 } // namespace tests
 } // namespace ndn
