diff --git a/wscript b/wscript
index a55e483..2d75f2d 100644
--- a/wscript
+++ b/wscript
@@ -47,7 +47,13 @@
                    help='Build examples')
 
     opt.add_option('--with-tests', action='store_true', default=False,
-                   help='Build tests')
+                   help='Build all tests (benchmarks, integration tests, unit tests)')
+    opt.add_option('--with-benchmarks', action='store_true', default=False,
+                   help='Build benchmarks')
+    opt.add_option('--with-integration-tests', action='store_true', default=False,
+                   help='Build integration tests')
+    opt.add_option('--with-unit-tests', action='store_true', default=False,
+                   help='Build unit tests')
 
     opt.add_option('--without-tools', action='store_false', default=True, dest='with_tools',
                    help='Do not build tools')
@@ -76,7 +82,9 @@
                'doxygen', 'sphinx_build'])
 
     conf.env.WITH_EXAMPLES = conf.options.with_examples
-    conf.env.WITH_TESTS = conf.options.with_tests
+    conf.env.WITH_BENCHMARKS = conf.options.with_benchmarks or conf.options.with_tests
+    conf.env.WITH_INTEGRATION_TESTS = conf.options.with_integration_tests or conf.options.with_tests
+    conf.env.WITH_UNIT_TESTS = conf.options.with_unit_tests or conf.options.with_tests
     conf.env.WITH_TOOLS = conf.options.with_tools
 
     conf.find_program('dot', mandatory=False)
@@ -134,7 +142,7 @@
 
     conf.check_boost(lib=boost_libs, mt=True)
 
-    if conf.env.WITH_TESTS:
+    if any((conf.env.WITH_BENCHMARKS, conf.env.WITH_INTEGRATION_TESTS, conf.env.WITH_UNIT_TESTS)):
         conf.check_boost(lib='unit_test_framework', mt=True, uselib_store='BOOST_TESTS')
 
     if conf.env.WITH_TOOLS:
@@ -153,7 +161,7 @@
         conf.env.prepend_value('STLIBPATH', ['.'])
 
     conf.define_cond('HAVE_STACKTRACE', conf.env.HAVE_STACKTRACE)
-    conf.define_cond('HAVE_TESTS', conf.env.WITH_TESTS)
+    conf.define_cond('HAVE_TESTS', conf.env.WITH_INTEGRATION_TESTS or conf.env.WITH_UNIT_TESTS)
     conf.define_cond('WITH_OSX_KEYCHAIN', conf.env.HAVE_OSX_FRAMEWORKS and conf.options.with_osx_keychain)
     conf.define_cond('DISABLE_SQLITE3_FS_LOCKING', not conf.options.with_sqlite_locking)
     conf.define('SYSCONFDIR', conf.env.SYSCONFDIR)
@@ -227,8 +235,7 @@
             name='ndn-cxx-static' if bld.env.enable_shared else 'ndn-cxx',
             **libndn_cxx)
 
-    if bld.env.WITH_TESTS:
-        bld.recurse('tests')
+    bld.recurse('tests')
 
     if bld.env.WITH_TOOLS:
         bld.recurse('tools')
