Pytest Testing Idioms
Jump to navigation
Jump to search
External
Internal
Overview
Tested Code is Supposed to Throw Exception
import pytest
def test_something_that_should_throw_exception():
with pytest.raises(Exception) as info:
my_method()
If the tested code raises a more specific exception, you can use that instead:
def test_something_that_should_throw_exception():
with pytest.raises(ValueError) as info:
my_method()
This tests the exception arguments:
def test_something_that_should_throw_exception():
with pytest.raises(ValueError) as info:
my_method()
assert info.value.args[0] == "some message"
assert str(info.value.args[0]).contains("some message")
- How to I test the exception message?
Also see: