pytest juga dapat melakukan testing untuk memeriksa apakah exception tertentu terjadi. Mari kita hapus code dari program sebelumnya, lalu ganti dengan code berikut
import pytest
def my_exception():
div = 10/0
return div
def test_result1():
with pytest.raises(ZeroDivisionError):
my_exception()
Fungsi my_exception() adalah fungsi yang sengaja kita buat error karena pembagian dengan bilangan nol.
Pada fungsi test_result1(), kita akan melakukan testing apakah Exception ZeroDivisionError terjadi.
Jika pytest dijalankan, maka akan tampil log yang menunjukan testing success, yang berarti Exception ZeroDivisionError terjadi.
F:\Project\learnpytest>pytest first.py
============================ test session starts ============================
platform win32 -- Python 3.8.5, pytest-6.2.4, py-1.9.0, pluggy-0.13.1
rootdir: F:\Project\learnpytest, configfile: pytest.ini
plugins: dash-1.19.0
collected 1 item
first.py . [100%]
============================= 1 passed in 0.09s =============================