Python 테스트 입문
Alexander Levin
Data Scientist
사용 사례 2: 이 테스트는 실패가 예상됨
테스트 마커: pytest의 테스트에 붙이는 태그
@pytest.mark 데코레이터로 시작합니다:import pytest
def get_length(string):
return len(string)
# 테스트 마커 구문
@pytest.mark.skip
def test_get_len():
assert get_length('123') == 3
@pytest.mark.skip 사용: 언제나 테스트를 건너뜀@pytest.mark.skipif 사용: 조건이 True이면 건너뜀@pytest.mark.skip 사용: 테스트를 무기한 건너뜁니다.import pytest
def get_length(string):
return len(string)
# skip 마커 예시
@pytest.mark.skip
def test_get_len():
assert get_length('123') == 3

@pytest.mark.skipif 사용: 주어진 조건이 True이면 테스트를 건너뜁니다.import pytest
def get_length(string):
return len(string)
# skipif 마커 예시
@pytest.mark.skipif('2 * 2 == 5')
def test_get_len():
assert get_length('abc') == 3

@pytest.mark.xfail 사용: 테스트가 실패할 것으로 예상될 때import pytest
def gen_sequence(n):
return list(range(1, n+1))
# xfail 마커 예시
@pytest.mark.xfail
def test_gen_seq():
assert gen_sequence(-1)

테스트 마커:
pytest의 테스트 속성@pytest.mark.name_of_the_marker로 시작@pytest.mark.xfail@pytest.mark.skip@pytest.mark.skipifPython 테스트 입문