diff --git a/tests/wscript b/tests/wscript
new file mode 100644
index 0000000..0a53f7c
--- /dev/null
+++ b/tests/wscript
@@ -0,0 +1,55 @@
+# -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*-
+
+"""
+Copyright (c) 2014,  Regents of the University of California
+
+This file is part of NSL (NDN Signature Logger).
+See AUTHORS.md for complete list of NSL authors and contributors.
+
+NSL is free software: you can redistribute it and/or modify it under the terms
+of the GNU General Public License as published by the Free Software Foundation,
+either version 3 of the License, or (at your option) any later version.
+
+NSL is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+PURPOSE.  See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along with
+NSL, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+"""
+
+top = '..'
+
+def build(bld):
+    # Unit tests
+    if bld.env['WITH_TESTS']:
+        # main()
+        unit_test_main = bld(
+            target='unit-tests-main',
+            name='unit-tests-main',
+            features='cxx',
+            use='core-objects',
+            source='main.cpp',
+            install_path=None,
+          )
+
+        # common test modules
+        unit_test_base = bld(
+            target='unit-tests-base',
+            name='unit-tests-base',
+            features='cxx',
+            source=bld.path.ant_glob(['*.cpp'], excl='main.cpp'),
+            use='core-objects',
+            headers='../common.hpp boost-test.hpp',
+            install_path=None,
+          )
+
+        # unit tests
+        unit_tests = bld.program(
+            target='../unit-tests',
+            features='cxx cxxprogram',
+            source=bld.path.ant_glob(['core/**/*.cpp', 'daemon/**/*.cpp']),
+            use='core-objects daemon-objects unit-tests-base unit-tests-main',
+            includes='.',
+            install_path=None,
+          )
