2022.02.11  

【VScode】pytestの設定と使い方

Python    

VScodeでpytestを実施する機会があったので、設定方法と使い方をメモ書きします。
使用端末はMacです。

作業手順

まず、適当なディレクトリを作成します。
この記事ではpytest_dirとします。

pytest_dirを作成したらその中にsrcディレクトリとtestディレクトリを作成します。

作成したら、VScode上部のファイルをクリックし、フォルダを開くを選択してpytest_dirを開きます。

開いたら次の構成でファイルを作成します。__init__.pyの中身はからでOKです。
ここで記載している以外のファイルは、VScodeが自動生成してくれます。

pytest_dir
├── __init__.py
├── src
│      ├── __init__.py
│     └──calculation.py
└── test
      ├── __init__.py
      └── test_calculation.py
# calculation.py

def addition(num1: int, num2: int) -> int:
    return num1 + num2

def subtraction(num1: int, num2: int) -> int:
    return num1 - num2

def division(num1: int, num2: int) -> float:
    if num2 == 0:
        raise ZeroDivisionError()
    return num1 / num2
# test_calculation.py

from ..src.calculation import (
    addition, subtraction, division
)

def test_add():
    assert addition(2, 3) == 5

def test_sub():
    assert subtraction(9, 3) == 6

def test_divide_ok():
    assert division(8,4) == 2

ファイルが作成できたらF1キーを押してコマンドパレット表示させます。
表示させたコマンドパレットからPython: Configure Testsを探してクリックします。

次の表示でpytest pytest framworkを選択します。

テストコードの入っているディレクトリを選択します。

画面左側にフラスコマークが表示されるのでクリックします。
するとテスト対象のディレクトリとファイル名が表示され、
さらにテストファイルに再生マークが表示されます。

画面上部の赤枠のボタンを押すとテストが実行されます。
デバックコンソールを確認すると、テストが正常終了していることが確認できます。

assertの結果を想定外の数値に変えてテスト実行ボタンを実行すると、エラー内容を表示してくれます。

フラスコボタンを押した際に、以下のエラーが表示される場合があります。

Pytest Discovery Error 
  Error discovering pytest(see Output > Python)

その場合はこちらの記事を参照すれば解決するかもしれません。
【VSCode】Pytest Discovery Error : Error discovering pytest

デバッグ

デバッグを行うには下記画面赤枠の虫マークをクリックします。
また、ブレイクポイントを設定するには、任意の処理の左端をクリックいます。

ブレイクポイントを設定した状態で虫マークを押すと、
下記のようにブレイクポイントの箇所で処理が一時停止します。

参考サイト

pytestのとりあえず知っておきたい使い方
VSCodeとpytestでPythonコードをテスト&デバッグする
【VScode】pytestによる単体テスト実行 & カバレッジ可視化方法

コメント
現在コメントはありません。
コメントする
コメント入力

名前 (※ 必須)

メールアドレス (※ 必須 画面には表示されません)

送信