Unittestとは
unittest(単体テスト)は、作成した関数やプログラムが期待通り動作するか試行することを目的としています。
今回は覚書もかねて大まかな共有します。
環境
macOS 10.14.6
Unittestの基本的使い方
以下はtashizan
関数をtestするときのコードです。
tashizan
は引数2つに対し、その和を返す関数です。
Test.py
import unittest
def tashizan(val1,val2):
ans = val1 + val2
return ans
class Test(unittest.TestCase):
def test_tashizan(self):
actual = tashizan(1, 2)
expected = 3
self.assertEqual(actual, expected)
if __name__ = "__main__":
unittest.main()
Test.py
内のコードについて上から順に説明します。
Test.py
import unittest
def tashizan(val1,val2):
ans = val1 + val2
return ans
unittestをインポートし、関数tashizan
を定義します。
Test.py
class Test(unittest.TestCase):
def test_tashizan(self):
actual = tashizan(1, 2)
expected = 3
self.assertEqual(actual, expected)
①Test
クラスを定義し、unittest
内のTestCase
クラスを継承します。
②変数actual
に答えを格納します。
③変数expected
に期待される答えを格納します。この場合1+2=3となるため、expected
には3を格納しておきます。
④TestCase
内のassertEqual
メソッドは2つの引数が等しいかどうかを返します。