テスト

ケーススタディ:Pythonでソフトウェアを構築する

Mark Pedigo

Principal Data Scientist

ロードマップ

完了部分と次に始める部分を示すロードマップ

ケーススタディ:Pythonでソフトウェアを構築する

なぜ自動テストか?

  • 自動化されたソフトウェア主導のテスト
  • 人の介入は不要
  • 単純な確認から包括的な評価まで

コードをテストするロボット

ケーススタディ:Pythonでソフトウェアを構築する

自動テストの利点

  • コード品質の向上
  • リスク低減
  • ユーザー体験の向上
ケーススタディ:Pythonでソフトウェアを構築する

ユニットテストの役割

  • 個々のコンポーネントや関数を個別に検証
  • アプリの最小単位に注目
  • 入力に対する期待出力を確認

ブロックを拡大鏡で検査

ケーススタディ:Pythonでソフトウェアを構築する

pytestライブラリとは?

  • Python向けの一般的なテストフレームワーク
  • ユニットテストをサポート
  • シンプルで柔軟、機能が豊富
ケーススタディ:Pythonでソフトウェアを構築する

pytestの利点

  • シンプルで読みやすい
  • 強力なfixture
  • 他ツールと統合可能
ケーススタディ:Pythonでソフトウェアを構築する

ユニットテストの例

# math.py
def add(a, b):
  return a + b
# test_math.py
import pytest
def test_add():
    assert add(2, 3) == 5
    assert add(-1, 1) == 0
    assert add(0, 0) == 0
    assert add(-5, -7) == -12

コンソールで実行:

pytest test_math.py

===== test session starts ===== collected 1 item test_math_functions.py . [100%] ====== 1 passed in 0.03s ======
ケーススタディ:Pythonでソフトウェアを構築する

Ayo berlatih!

ケーススタディ:Pythonでソフトウェアを構築する

Preparing Video For Download...