0 votes
in Education by (1.7m points)
How does one write a unittest that fails only if a function doesn't throw an expected exception?

Select the correct answer from above options

1 Answer

0 votes
by (1.7m points)
 
Best answer
For writing a unit test to check whether a Python function throws an exception, you can use TestCase.assertRaises (or TestCase.failUnlessRaises) from the unittest module.

assertRaises():-

This function test that an exception is raised when callable is called with any positional or keyword arguments that are also passed to assertRaises(). The test passes if exception is raised, is an error if another exception is raised, or fails if no exception is raised. To catch any of a group of exceptions, a tuple containing the exception classes may be passed as an exception.

Following is an example regarding how we write unittest module:-

import mymod

class MyTestCase(unittest.TestCase):

     def test1(self):

         self.assertRaises(SomeCoolException, mymod.myfunc)
...