Asserts raise an error in test code alerting that a test failed. If I am expecting a test to pass and not raise an exception, why would I use assert_not_raised (or equivalent) instead of just letting the raised exception fail the test?
I suppose it may be more explicit for others reading the test code, i.e. that the thing being tested could raise an exception, but still seems unnecessary.