unittest expectedFailure and xfail
Episode 166 · October 14th, 2021 · 6 mins 23 secs
About this Episode
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")