Python assertTrue()

Created with Sketch.

Python assertTrue()

Summary: in this tutorial, you’ll learn how to use Python assertTrue() to test if an expression is True and assertFalse() method to test if an expression is False.

Introduction to the Python assertTrue() method

The assertTrue() is a method of the TestCase class in the unittest module. The assertTrue() method tests if an expression is True:

assertTrue(expr, msg=None)

Code language: Python (python)

If the expr is True, the test passes. Otherwise, the test fails.

The msg is optional. If you pass the msg parameter, it’ll be displayed when the test fails.

The assertTrue() method is equivalent to the following expression:

bool(expr) is True

Code language: Python (python)

It is not equivalent to the following:

expr is True

Code language: Python (python)

In practice, you should use the assertTrue() method to test the boolean of a variable. Also, you should not use the assertTrue() method if more specific methods are available.

For example, instead of using the assertTrue() method for the following case:

assertTrue(a == b)

Code language: Python (python)

you should use the assertEqual() method instead:

assertEqual(a,b)

Code language: Python (python)

Because the assertEqual() method provides a more clear error message in case the test fails.

Python assertTrue() method example

The following example uses the assertTrue() method to test if all characters in a string are digits:

import unittest

class TestBool(unittest.TestCase):
def test_is_digit(self):
str = '123'
self.assertTrue(str.isdigit())

Code language: Python (python)

Run the test:

python -m unittest -v

Code language: Python (python)

Output:

test_is_digit (test_bool.TestBool) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.000s

OK

Code language: Python (python)

Python assertFalse() method

The assertFalse() method tests if an expression is False. For example:

import unittest

class TestBool(unittest.TestCase):
def test_empty_string_is_digit(self):
str = ''
self.assertFalse(str.isdigit())

def test_alpha_is_digit(self):
str = 'a00'
self.assertFalse(str.isdigit())

Code language: Python (python)

Run the test:

python -m unittest -v

Code language: Python (python)

Output:

test_alpha_is_digit (test_bool.TestBool) ... ok
test_empty_string_is_digit (test_bool.TestBool) ... ok
test_is_digit (test_bool.TestBool) ... ok

----------------------------------------------------------------------
Ran 3 tests in 0.001s

OK

Code language: Python (python)

Summary

  • Use the assertTrue() method to test if an expression is True
  • Use the assertFalse() method to test if an expression is False

Leave a Reply

Your email address will not be published. Required fields are marked *