파이썬 유닛 테스트 워크 유닛 테스트

단위 테스트는 무엇입니까?

유닛 테스트는 인증을위한 소프트웨어 설계 단위 (모듈)에 대한 최소한의 책임이있다.

파이썬 유닛 테스트 프레임 워크, 예를 들어, 유닛 테스트, pytest가 많은 언어에게있다, doctest가 파이썬 언어 인처럼 유닛 테스트 단위 테스트 프레임 워크를 오는.

 

다음 선물 비교적 간단한 단위 테스트 스크립트 유닛 테스트

. (1)  오기 유닛 테스트      # 1 유닛 테스트 모듈 도입 
2  
. 3  
. 4   : TestCount (unittest.TestCase)는      #는 상기 서브 클래스 테스트 클래스, 상위 클래스 상속 모든 메소드 unittest.TestCase 정의한다 
. (5)  
. 6      DEF 설정 (자기) :         #를 설정 () 메소드를 사용 초기 테스트 케이스 실행 전에 
7          인쇄 ( " 테스트 시작 " )
 8  
9      DEF가 test_add (자동) :      #을 기반으로해야합니다 시험 시작의 이름을 따서 명명 테스트 케이스 섹션을 정의, 당신은 여러 테스트 케이스의 방법을 정의 할 수 있습니다 
(10)          (= result_1 입력을 " 숫자입니다 (가) 입력! \ N- 형 " )
 11          result_1 =INT (result_1)
 12 인          self.assertEqual (result_1 113, MSG는 = " 무언가 잘못 " )        # 1 unittest.TestCase 결과의 분류를 결정하기위한 다양한 방법을 이용하여 어 써트 될 수있다 
(13)가된다  
(14)      DEF의 test_add2 (자기) :         # 의 두 테스트 케이스 
15          result_2 * = 18 8이다.
 16          self.assertEqual (result_2 144, MSG는 = " 결과가 잘못 " )
 (17).  
(18)는      DEF 의 tearDown (자기)      # 의 tearDown () 메소드 설정 ()에있어서의 대응에 대한 의 다음 사건의 구현을위한 깨끗한 환경을 떠나지 테스트 케이스 실행의 여파 후 
19          인쇄 ( " 시험 끝 " )
 (20) 
21은  
22 인  경우  __name__ == " __main__ " :       #가 부분적으로 사용 main () 메소드는 단위 테스트 모듈 스크립트가 직접 실행할 수있는 것 
23      ) (unittest.main

 

공식 문서에 파이썬 표준 라이브러리 유닛 테스트에서, 오프닝 장 더 중요한 네 가지 기본 개념을 제공합니다 :

테스트 케이스 (TestCase에)

테스트 케이스는 독립적 인 테스트 유닛이다. 이 때 입력 특정 데이터에 대한 응답을 체크한다. unittest 베이스 클래스 :  TestCase 새로운 테스트합니다.

테스트 스위트 (있는 TestSuite)

테스트 스위트는  테스트 케이스 또는 테스트 스위트, 또는이 둘의 시리즈입니다. 그것은 시험을 함께 수행 요구를 보관하는 데 사용됩니다.

테스트 실행 (테스트 러너)

테스트 러너  출력 테스트 결과를 수행하기위한 요소이다. 이 동작은 제공된 테스트 스위트 또는 테스트 케이스 기반 TextTestRunner의 run () 메소드에 의해 수행되는 그래픽 인터페이스, 텍스트 인터페이스를 사용할 수있다.

발판 시험 (측정 지그)

테스트 장치는  하나 이상의 테스트를위한 준비를 위해 필요한 것이 아니라 모든 관련 청소 작업은 전형적으로 설정 () 해체 () 메소드 TestCase에 의해 수행된다. 예를 들어,이 임시 또는 프록시 데이터베이스, 디렉토리의 생성을 포함하고, 또는 서버 프로세스를 시작할 수 있습니다.

 

  • 유닛 테스트 주장 일반적으로 사용되는 방법 :

오류 : 심판 문자열이 설정되지 않은 경우 반환해야

assertEqual는 (A, B, MSG = "")
두 파라미터에 동등한 결정된다 첫 번째 ==

assertNotEqual (A, B, MSG = "")
두 파라미터가 동일하지 않은 분석 : 제! = 두 번째

assertIn (부재, 용기, MSG는 = "")
문자열을 포함할지 여부를 결정 부재를 용기에

assertNotIn (자기 부재, 용기, MSG는 = "")
문자열을 포함하는지 여부를 결정하지 부재 용기

assertTrue는 (MSG = "는"X )
판정 사실이다 BOOL (X)가 true 인

assertFalse (X, MSG는 = "" )
False 인 BOOL (X) : 오류 여부를 판단

assertIsNone는 (OBJ, MSG = "" )
OBJ 포함되지 않은 경우 : 없음 여부를 판정한다

assertIsNotNone는 (OBJ, MSG = "" )
OBJ 없음] : 없음 여부를 판단

- 계속하려면

추천

출처www.cnblogs.com/jockeyhao/p/12153349.html