diff --git a/Android.mk b/Android.mk
index f2efb1de2ee772935b20c0de452a7f2ebca90801..e0c9919579a71a4d4404f69e01ff63f90ec772df 100644
--- a/Android.mk
+++ b/Android.mk
@@ -204,12 +204,6 @@ LOCAL_REQUIRED_MODULES += \
     secilc \
     plat_sepolicy_vers.txt \
 
-ifneq ($(with_asan),true)
-LOCAL_REQUIRED_MODULES += \
-    treble_sepolicy_tests \
-
-endif
-
 # Include precompiled policy, unless told otherwise
 ifneq ($(PRODUCT_PRECOMPILED_SEPOLICY),false)
 LOCAL_REQUIRED_MODULES += precompiled_sepolicy precompiled_sepolicy.plat_and_mapping.sha256
@@ -247,6 +241,7 @@ endif
 ifneq ($(with_asan),true)
 LOCAL_REQUIRED_MODULES += \
     sepolicy_tests \
+    treble_sepolicy_tests \
 
 endif
 
diff --git a/tests/treble_sepolicy_tests.py b/tests/treble_sepolicy_tests.py
index ea0373191cba92559bc2180b0d09708a9066b914..9f2526e4b08071bdcc42b01640f6e41f1ede34bd 100644
--- a/tests/treble_sepolicy_tests.py
+++ b/tests/treble_sepolicy_tests.py
@@ -332,18 +332,11 @@ if __name__ == '__main__':
     if not os.path.exists(options.libpath):
         sys.exit("Error: library-path " + options.libpath + " does not exist\n"
                 + parser.usage)
-    if not options.basepolicy:
-        sys.exit("Must specify the current platform-only policy file\n" + parser.usage)
-    if not options.mapping:
-        sys.exit("Must specify a compatibility mapping file\n" + parser.usage)
-    if not options.oldpolicy:
-        sys.exit("Must specify the previous monolithic policy file\n" + parser.usage)
     if not options.policy:
         sys.exit("Must specify current monolithic policy file\n" + parser.usage)
     if not os.path.exists(options.policy):
         sys.exit("Error: policy file " + options.policy + " does not exist\n"
                 + parser.usage)
-
     if not options.file_contexts:
         sys.exit("Error: Must specify file_contexts file(s)\n" + parser.usage)
     for f in options.file_contexts:
@@ -351,15 +344,25 @@ if __name__ == '__main__':
             sys.exit("Error: File_contexts file " + f + " does not exist\n" +
                     parser.usage)
 
+    # Mapping files are only necessary for the TrebleCompatMapping test
+    if options.tests is None or options.tests is "TrebleCompatMapping":
+        if not options.basepolicy:
+            sys.exit("Must specify the current platform-only policy file\n" + parser.usage)
+        if not options.mapping:
+            sys.exit("Must specify a compatibility mapping file\n" + parser.usage)
+        if not options.oldpolicy:
+            sys.exit("Must specify the previous monolithic policy file\n" + parser.usage)
+        basepol = policy.Policy(options.basepolicy, None, options.libpath)
+        oldpol = policy.Policy(options.oldpolicy, None, options.libpath)
+        mapping = mini_parser.MiniCilParser(options.mapping)
+        compatSetup(basepol, oldpol, mapping)
+
+
     if options.faketreble:
         FakeTreble = True
 
     pol = policy.Policy(options.policy, options.file_contexts, options.libpath)
     setup(pol)
-    basepol = policy.Policy(options.basepolicy, None, options.libpath)
-    oldpol = policy.Policy(options.oldpolicy, None, options.libpath)
-    mapping = mini_parser.MiniCilParser(options.mapping)
-    compatSetup(basepol, oldpol, mapping)
 
     if DEBUG:
         PrintScontexts()