왜 유닛 테스트에 사용

'' ' 를 사용하는 이유 단위 테스트 프레임 워크를? : 
실시 예에서의 실행을위한 실시 예 및 조직과 많은 시간 1. 
2. 비교 방법은 풍부한 제공 
3. 로그 리치 제공 '' 

오기 유닛 테스트
 오기 HTMLTestRunner
 오기 OS의 

경로 = os.getcwd ()
 클래스 Test_baidu (unittest.TestCase의 ) :
     DEF 설정 (자동) :
         인쇄 ( ' 각이 시작 ----------- ' ) 

    DEF TEST_1 (자동) :
         인쇄 ( ' TEST_1 ' ) 
        self.assertEqual ( ' . 1 ' , ' 2 ' , MSG =' .! 1 = 2 ' ) 

    DEF의 test_2 (자기)
         전단 ( ' test_2 ' ) 
        self.assertIsInstance ([ 1,2 ]리스트) 

    unittest.skip @     # 1 이 메소드가 실행되지 않지만, 비록 설정 및 해체의 실행 역시 
    DEF의 test_3 (자기) :
         인쇄 ( ' test_3 ' ) 
        self.assertIs ( ' 1. ' , ' 1. ' ) 

    DEF 의 tearDown (자동) :
         인쇄 ( ' 각 끝 ---------- ' ) 

    @ classmethod
    DEF setUpClass (CLS) :
         인쇄 ( ' 큰 프로젝트를 열 수 있습니다 +++++++++ ' ) 

    @classmethod 
    DEF tearDownClass (CLS) :
         인쇄 ( ' 큰 프로젝트가 종료 ++++++++++ + " ) 


IF  __name__ == ' __main__ ' : 
    SUIT는 = unittest.TestSuite () 
    suit.addTest (Test_baidu ( ' test_2 ' ))    #의 순서로 먼저 실행되는이 (A) 내로 추가 --- 실시 예와 조직이다 
    suit.addTest (Test_baidu ( ' TEST_1 ' )) 
    suit.addTest (Test_baidu ( 'test_3 ' ))    # 스킵 존재로, 또한 전혀 사용 목록에 추가 
    러너는 = unittest.TextTestRunner ()   # 사건을 추가 한 후이 TextTestRunner에,에 맞게 실행되는 () 객체 실행할 수 있습니다 -기구 편리한 케이스 키 수행 
    #를 저가 unittest.TestLoader = (). 저가 (경로) 
    # runner1 HTMLTestRunner.HTMLTestRunner = () 
    #에 runner1.run (저가) 
    runner.run (SUIT)

상기 테스트는 *의 평이고 ,, 이는 main.py은

'' ' 거의 정장 하나를 추가 할 수 없습니다 예에 사용합니다. 
우리는 모든 사용 사례는 많은 테스트 *의 평가있다, TEST_Case 역할에있는합니다 지금 만 u1.py '' ' 

가져 오기 유닛 테스트, 운영 체제의 
경로 = os.getcwd ()
 인쇄 (경로) 


디스 커버 = unittest.defaultTestLoader. 디스 커버 (경로, 패턴 = ' U는 평 * ' ) #은 디스 커버 복귀 Testloader 있도록 모든 경우가 소송에로드하는 것입니다, 소송입니다. 

러너 = unittest.TextTestRunner () 
runner.run (저가) 


IF  __name__ == ' __main__ ' : 
    unittest.main (상세도 . = 1)

스킵 테스트 건너 뛰기

수입 유닛 테스트에
 수입 HTMLTestRunner의
 수입 운영 체제의 

경로 = os.getcwd ()
 클래스 Test_baidu (unittest.TestCase) :
     데프 설정 (자동) :
         인쇄 ( ' 每一个开始了----------- ' ) 

    DEF test_1 ( 자기) :
         인쇄 ( ' test_1 ' ) 
        self.assertEqual ( ' 1 ' , ' 2 ' , MSG = ' 1 = 2! ' ) 

    데프 test_2 (자동) :
         인쇄 (' Test_2 ' ) 
        self.assertIsInstance ([ 1,2 ]리스트) 

    @ unittest.skip     # 이 방법 설정 및 해체의 수행도 수행되지 않지만 있지만 
    DEF의 test_3 (자기)
         전단 ( ' test_3를 ' ) 
        self.assertIs ( ' . 1 ' , ' . 1 ' ) 


    unittest.skipIf @ ( . (3) <2, ' 테스트가 스킵 실제 조건, 조건이 거짓의 경우 인 경우에 수행되는 ' )
     데프 : test_4 (자기)
         전단 ( ' test_4를 ' ) 
        셀프 .assertIs ( '. (1) ' , ' 1. ' ) 

    unittest.skipUnless (@ 3 <2. ' 상태 행하지 않는 거짓 테스트 ' )   # 않는 않는 
    DEF TEST_5 (자기)
         전단 ( ' TEST_5 ' ) 
        self.assertIs ( ' . 1 ' , ' . 1 ' ) 


    DEF 의 tearDown (자동) :
         인쇄 ( ' 각 끝 ----------이 ' ) 

    @classmethod 
    DEF : setUpClass (CLS)
         인쇄 ( '대형 프로젝트가 열려 +++++++++됩니다 ' ) 

    @classmethod 
    DEF : tearDownClass (CLS)
         인쇄 ( ' 큰 프로젝트가 +++++++++++ 종료 ' ) 


IF  __name__ == ' __main__을 ' : 
    unittest.main (다변 = 2)

HTML 파일을 생성

가져 오기 유닛 테스트, OS
 에서 HTMLTestRunner 가져 오기 HTMLTestRunner의 
경로를 = os.getcwd ()
 인쇄 (경로) 


발견 = unittest.defaultTestLoader.discover (경로, 패턴 = ' U이 * 평 ' ) # 발견이 반환 소송, 그래서 모든 Testloader 케이스는 부하를 이용할 수 있습니다. 

htmlpath = R & LT 경로 + ' \ report.html " 
인쇄 (htmlpath) 

F = 열기 (htmlpath, ' WB ' ) 
러너 = HTMLTestRunner (F = 트림, 상세도 = 2, 표제 = ' 시험 성적서 ' , 설명 = '자신의 테스트 결과 ' )   #의 htmltestrunner 패키지의 TestRunner하는 것입니다 

runner.run (발견) 
f.close () 




IF  __name__ == ' __main__ ' : 
    unittest.main (상세도를 . = 1)

 

가져 오기 시간 
해주기 = time.strftime ( " % Y- % M- % D % H- % M- % S " )
 '' ' 원래의 HTML 파일 이름은 모두 각을하게 다룰 것입니다 재생, 죽은 기록 : 이름이 같은 (오류가하지 않는 것 파일 이름) 아니다 합류 '' ' 
htmlpath = ' F : / ASUS / auto_file / unittest_html ' + ' / ' + 현재 + ' report.html ' 

F = 열기 (htmlpath, ' WB ' ) 

러너 = HTMLTestRunner (스트림 = F, 상세 = 2, 제목 = ' 테스트 보고서 ' , 설명 = ' 이 자신의 테스트 결과입니다 ' )   #을htmltestrunner 패키지의 TestRunner하는 것입니다 

runner.run를 (발견) 
f.close ()

 

추천

출처www.cnblogs.com/tarzen213/p/11108860.html