Pythonライブラリのpytestで簡単なテストを実施してみた

はじめに

  • PythonでのCIの勉強に向け、今一度pytestを学びなおしてみてるための記事です。
  • 今回行ったことは以下の通りです。
    • pytestのインストール
    • かんたんなサンプルでpytestを使ってみる

実行環境

手順とその結果

  1. まずpytestをインストール pip install pytest

  2. 適当なディレクトリに以下の2つのファイルを作成する

    • prime.py

      ごく普通の、素数判定を行うコードです。

        import math
      
      
        def is_prime(n):
            if n <= 1:
                return False
      
            if n == 2:
                return True
      
            if n % 2 == 0:
                return False
      
            for i in range(3, math.ceil(math.sqrt(n)) + 1, 2):
                if n % i == 0:
                    return False
      
            return True
      
        if __name__ == "__main__":
            num = 100
            print(num, "is prime?: ", is_prime(num))
      
    • test_prime.py

      素数判定の関数のテストを記述したものです。

        from prime import is_prime
      
      
        def test_is_prime():
            expects = [
                False,  # 0
                False,  # 1
                True,   # 2
                True,   # 3
                False,  # 4
                True,   # 5
                False,  # 6
                True,   # 7
                False,  # 8
                False,  # 9
                ]
      
            for i, e in enumerate(expects):
                assert e == is_prime(i)
      
  3. コマンドプロンプトを開き、pytestと入力して実行する

    • 画像のように出力され、テストが成功したことが分かります。

おわりに

  • pytestで簡単なテストを実施してみました。
  • pytestでより複雑なことも出来るのでそれらも試していきたいと思います。