We're sunsetting PodQuest on 2025-07-28. Thank you for your support!
Export Podcast Subscriptions
cover of episode unittest expectedFailure and xfail

unittest expectedFailure and xfail

2021/10/14
logo of podcast Test & Code

Test & Code

Shownotes Transcript

xfail isn't just for pytest tests. Python's unittest has @unittest.expectedFailure.

In this episode, we cover:

  • using @unittest.expectedFailure
  • the results of passing and failing tests with expectedFailure
  • using pytest as a test runner for unittest
  • using pytest markers on unittest tests

Docs for expectedFailure:  https://docs.python.org/3/library/unittest.html#skipping-tests-and-expected-failures)

Some sample code.  unittest only: import unittest

class ExpectedFailureTestCase(unittest.TestCase):

@unittest.expectedFailure
def test_fail(self):
    self.assertEqual(1, 0, "broken")

@unittest.expectedFailure
def test_pass(self):
    self.assertEqual(1, 1, "not broken")

unittest with pytest markers: import unittest import pytest

class ExpectedFailureTestCase(unittest.TestCase):

@pytest.mark.xfail
def test_fail(self):
    self.assertEqual(1, 0, "broken")

@pytest.mark.xfail
def test_pass(self):
    self.assertEqual(1, 1, "not broken")

Full Transcript)