2008-10-20 10 views
3

단위 테스트를위한 코드를 작성하여 애플리케이션 코드를 테스트하고 싶습니다. 나는 다른 메소드를 가지고 있고, 이제 파이썬 스크립트로 하나씩이 메소드를 테스트하고 싶다. 하지만 글을 쓰는 방법을 모르겠습니다. 어떤 사람이 파이썬에서 단위 테스트를위한 작은 코드 예제를 제공 할 수 있습니까? 감사합니다.단위 테스트 코드 생성 방법

답변

7

Python Library Referenceunit testing framework section을 읽으십시오. 문서에서 basic example

:

import random 
import unittest 

class TestSequenceFunctions(unittest.TestCase): 

    def setUp(self): 
     self.seq = range(10) 

    def testshuffle(self): 
     # make sure the shuffled sequence does not lose any elements 
     random.shuffle(self.seq) 
     self.seq.sort() 
     self.assertEqual(self.seq, range(10)) 

    def testchoice(self): 
     element = random.choice(self.seq) 
     self.assert_(element in self.seq) 

    def testsample(self): 
     self.assertRaises(ValueError, random.sample, self.seq, 20) 
     for element in random.sample(self.seq, 5): 
      self.assert_(element in self.seq) 

if __name__ == '__main__': 
    unittest.main() 
4

주어진 unittest 예제로 시작하는 것이 가장 좋습니다. 일부 표준 모범 사례 :

  • 은 프로젝트의 루트에 tests 폴더에있는 모든 테스트를했습니다.
  • 테스트 할 각 파이썬 모듈에 대해 하나의 테스트 모듈을 작성하십시오.
  • 테스트 모듈은 test으로 시작해야합니다.
  • 시험 방법은 test으로 시작해야합니다.

      : 당신이 당신의 테스트 번호와 범위에 성장의 인생을 더 쉽게 만드는 것 그것은 몇 가지 좋은 확장이, (그것은 오래 걸리지 안) unittest과 편안하게 한

  • nose - 모든 테스트를 쉽게 찾아서 실행할 수 있습니다.
  • testoob - 출력이 색상으로 표시됩니다 (그 이상의 이유가 있지만 사용 이유입니다).
  • pythoscope - 시도하지 않았지만 응용 프로그램의 테스트 스텁을 자동으로 생성 (실패)합니다. 상용구 코드를 작성하는 데 많은 시간을 절약해야합니다.