2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

製薬企業研究者がPythonのユニットテストについてまとめてみた

Posted at

はじめに

ここでは、unittestを用いたPythonのテストについて解説していきます。

テストの基本

テストは、対処となる関数に対応させるように、以下のように書きます。

import unittest


def average(num1, num2):
    return (num1 + num2) / 2


class AverageTests(unittest.TestCase):
    
    def test_average(self):
        actual = average(1, 2)
        expected = 1.5
        self.assertEqual(actual, expected)

averageという関数に対して、AverageTestsというclassが用意され、このクラス内のメソッドとして、test_averageが書かれています。
このように、テスト用の関数はtest_テスト対象の関数名とすることが多いです。

assertメソッド

上の例のように、テストの判定時にはassertメソッドが使われます。
よく使われるassertメソッドには、以下のようなものがあります。

  • assertEqual(actual, expected):actualとexpectedが等しいかどうか
  • assertNotEqual(actual, expected):actualとexpectedが等しくないかどうか
  • assertTrue(bool):boolがTrueであるかどうか
  • assertFalse(bool):boolがFalseであるかどうか
  • assertGreater(num1, num2):num1がnum2より大きいかどうか
  • assertGreaterEqual(num1, num2):num1がnum2以上かどうか
  • assertLess(num1, num2):num1がnum2より小さいかどうか
  • assertLessEqual(num1, num2):num1がnum2以下かどうか
  • assertIn(value, values):valueがvaluesに含まれるかどうか

まとめ

ここでは、unittestを用いたPythonのテストの書き方について解説しました。
テストを味方につけて、開発効率を上げていきたいところです。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?