unittest expectedFailure and xfail

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
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")


Creators and Guests

Brian Okken
Host
Brian Okken
Software Engineer, also on Python Bytes and Python People podcasts
unittest expectedFailure and xfail
Broadcast by