pytest.xfail을 사용하는 이유

김장훈·2020년 4월 25일
0

Fail 테스트는 무엇때문에 사용하는 것일까.

TDD를 지향하면서 각종 테스트를 작성하다가 든 생각이다.

@pytest.mark.xfail
def test_some():
	...

이런류에서 굳이 fail이 뜨는 테스트를 만드는 이유는?
정답은 간단하다.

지금은 실패하는게 정상이지만 앞으로 개선되서 성공하는 테스트?임을 뜻한다
다르게 생각하자면 현재 app에서 가지고 있는 bug에 대한 테스트라 이해하면 된다.

전체 테스트를 돌릴 경우 위 테스트에 xfail을 안해놓으면 에러로 뜨게 된다.
그렇기에 이러한 내용을 이해 못했을때는

assert res == False

등으로 애초에 결과를 False로 하여 통과시키는 방법을 쓰면 되지않는가 라고 생각했는데 이럴 경우 안되는 기능이 계속 되는 것처럼 보이게 된다.

https://softwareengineering.stackexchange.com/questions/382501/whats-the-purpose-of-xfail-tests

profile
읽기 좋은 code란 무엇인가 고민하는 백엔드 개발자 입니다.

0개의 댓글