Pytest-기본 테스트로 시작

이제 첫 번째 pytest 프로그램부터 시작하겠습니다. 먼저 디렉터리를 만들고 그에 따라 디렉터리에 테스트 파일을 만듭니다.

아래 단계를 따르십시오-

  • 라는 새 디렉토리를 만듭니다. automation 명령 줄에서 디렉터리로 이동합니다.

  • 다음과 같은 파일을 만듭니다. test_square.py 해당 파일에 아래 코드를 추가하십시오.

import math

def test_sqrt():
   num = 25
   assert math.sqrt(num) == 5

def testsquare():
   num = 7
   assert 7*7 == 40

def tesequality():
   assert 10 == 11

다음 명령을 사용하여 테스트를 실행하십시오-

pytest

위의 명령은 다음 출력을 생성합니다-

test_square.py .F
============================================== FAILURES 
==============================================
______________________________________________ testsquare 
_____________________________________________
   def testsquare():
   num=7
>  assert 7*7 == 40
E  assert (7 * 7) == 40
test_square.py:9: AssertionError
================================= 1 failed, 1 passed in 0.06 seconds 
=================================

결과의 첫 번째 줄을 참조하십시오. 파일 이름과 결과를 표시합니다. F는 테스트 실패를 나타내고 점 (.)은 테스트 성공을 나타냅니다.

그 아래에서 실패한 테스트의 세부 정보를 볼 수 있습니다. 테스트가 실패한 문이 표시됩니다. 이 예에서 7 * 7은 40에 대한 동등성에 대해 비교되며 이는 잘못된 것입니다. 마지막으로 테스트 실행 요약을 볼 수 있습니다. 1 개는 실패하고 1 개는 통과했습니다.

tesequality 함수는 이름이 형식이 아니므로 pytest가 테스트로 간주하지 않기 때문에 실행되지 않습니다. test*.

이제 아래 명령을 실행하고 결과를 다시 확인하십시오.

pytest -v

-v는 자세한 정도를 증가시킵니다.

test_square.py::test_sqrt PASSED
test_square.py::testsquare FAILED
============================================== FAILURES 
==============================================
_____________________________________________ testsquare 
_____________________________________________
   def testsquare():
   num = 7
>  assert 7*7 == 40
E  assert (7 * 7) == 40
test_square.py:9: AssertionError
================================= 1 failed, 1 passed in 0.04 seconds 
=================================

이제 결과는 실패한 테스트와 통과 한 테스트에 대해 더 설명이 가능합니다.

Note − pytest 명령은 형식의 모든 파일을 실행합니다 test_* 또는 *_test 현재 디렉터리 및 하위 디렉터리에 있습니다.