diff --git a/acts/framework/acts/asserts.py b/acts/framework/acts/asserts.py
index c51671c..4bc9d33 100644
--- a/acts/framework/acts/asserts.py
+++ b/acts/framework/acts/asserts.py
@@ -114,6 +114,19 @@
         fail(msg, extras)
 
 
+def assert_false(expr, msg, extras=None):
+    """Assert an expression evaluates to false, otherwise fail the test.
+
+    Args:
+        expr: The expression that is evaluated.
+        msg: A string explaining the details in case of failure.
+        extras: An optional field for extra information to be included in
+                test result.
+    """
+    if expr:
+        fail(msg, extras)
+
+
 def skip(reason, extras=None):
     """Skip a test case.
 
diff --git a/acts/framework/tests/acts_asserts_test.py b/acts/framework/tests/acts_asserts_test.py
new file mode 100755
index 0000000..dbf39d9
--- /dev/null
+++ b/acts/framework/tests/acts_asserts_test.py
@@ -0,0 +1,37 @@
+#!/usr/bin/env python3.4
+#
+#   Copyright 2016 - The Android Open Source Project
+#
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
+#
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
+
+import unittest
+
+from acts import asserts
+from acts import signals
+
+MSG_EXPECTED_EXCEPTION = "This is an expected exception."
+
+
+class ActsAssertsTest(unittest.TestCase):
+    """Verifies that asserts.xxx functions raise the correct test signals.
+    """
+
+    def test_assert_false(self):
+        asserts.assert_false(False, MSG_EXPECTED_EXCEPTION)
+        with self.assertRaisesRegexp(signals.TestFailure,
+                                     MSG_EXPECTED_EXCEPTION):
+            asserts.assert_false(True, MSG_EXPECTED_EXCEPTION)
+
+
+if __name__ == "__main__":
+    unittest.main()
diff --git a/acts/framework/tests/acts_unittest_suite.py b/acts/framework/tests/acts_unittest_suite.py
index 108bc8d..bbcd088 100755
--- a/acts/framework/tests/acts_unittest_suite.py
+++ b/acts/framework/tests/acts_unittest_suite.py
@@ -19,6 +19,7 @@
 
 import acts_adb_test
 import acts_android_device_test
+import acts_asserts_test
 import acts_base_class_test
 import acts_records_test
 import acts_test_runner_test
@@ -26,6 +27,7 @@
 def compile_suite():
     test_classes_to_run = [
         acts_adb_test.ActsAdbTest,
+        acts_asserts_test.ActsAssertsTest,
         acts_base_class_test.ActsBaseClassTest,
         acts_test_runner_test.ActsTestRunnerTest,
         acts_android_device_test.ActsAndroidDeviceTest,
