Why does self.assertEqual from django.test.TestCase is better than using assert foo == bar?

assert foo == bar

 line 117, in test_speaking_category
    assert category.name == "Speaking"
AssertionError

self.assertEqual(foo, bar)

line 118, in test_speaking_category
    self.assertEqual(category.name, "Speaking")
AssertionError: u'Random Questions' != u'Speaking'
- Random Questions
+ Speaking