import pytest
import tensorflow as tf
from PIL import Image
import utils

@pytest.fixture
def pil_image():
    return Image.new('RGB', (32, 32), color='red')

def test_convert_pil_to_tensor(pil_image):
    tensor = utils.convert_pil_to_tensor(pil_image)

    assert tensor.shape == (32, 32, 3)
    assert tensor.dtype == tf.float32

@pytest.fixture의 역할

Dummy 테스트 환경을 구성

위의 예시에서는 PIL.Image 객체를 생성하여 test_conver_pil_to_tensor 함수에 넘겨줌

@pytest.fixture의 흐름

테스트 함수에서 parameter로 fixture 함수를 명시

이후 pytest에서 자동으로 fixture 함수를 호출하여 return을 input parameter로 넘겨줌

fixture 함수를 사용함으로써 테스트를 위해 간단한 dummy 데이터 생성 가능

'Programming Language > Python' 카테고리의 다른 글

게으른 로깅  (0) 2023.07.29
logging 사용법과 관련 이슈  (0) 2023.03.27