소프트웨어 공학의
QualityAssurance에서 전통적으로 사용되어 왔던 테스팅 방법 중의 하나. Unit은 최소 실행 단위를 말하는데 보통 하나의 함수에 해당한다.
ExtremeProgramming은 이런 전통적 개념을 바꾸어서, QA가 아니고 개발자 자신이 개발을 해 나가면서 동시에
UnitTest를 하는 방법을 사용한다. 따라서,
WhiteBoxTesting이라고 볼 수 있으나, 사실상은 BlackBoxTesting을 같이 포함해서 GrayBoxTesting을 하도록 한다.
김창준님.
SOP2.py 에서 보여주신 UnitTest 모듈이 표준은 아닌가 봐요. 파이썬 정보광장에서도 설명을 거의 찾아 보기 힘드네요.(국내에는 아직 잘 알려지지 않았습니다.) 그리고, 코드를 다 이해 못하였지만, error를 방지하기 위해 사용하는 것으로 생각되는데, 이것도 XP 에서 나온 개념인지 궁금합니다. 새로운 걸 또 배운 느낌! --지상은
링크따라가보시면 아시겠지만
UnitTest모듈은 python2.1부터 포함되는 것으로 알고 있습니다. 개인적으로는 이
TestFirstProgramming 을 잘 써먹어보고 싶지만, 아직은 잘 시도가 되지 않습니다. 아직 머리속에 전체 -> 부분으로 짜야될것만 같은 생각이 지배적이라서요.. 로직이 좀 커진다 싶으면,
TestFirstProgramming 이 엄두가 나지 않더라고요.. --
yong27
DoTheSimplestThingThatCouldPossiblyWork, 하시고
ProgrammingByIntention하세요. PBI는 TopDown입니다.
파이썬 CGI를 유닛테스트 하는덴 어떤 방법들이 좋을까요? form을
MockObject로 만들고 아웃풋을 체킹하는 방법을 사용하는데, 좀 원시적이네요-_- 다음주 부턴 Zope인데-_- --
영후
테스트 코드가 없었던 코드를 테스트해야 하는 경우에는 출력 스트림 리디렉션을 했다가 비교하는 방법을 권하고, 그렇지 않거나 혹은 좀 더 용기가 있다면 테스트를 더 잘게 만들거나 혹은 더 잘게 쪼개어 나가는 방법을 권합니다. (이렇게 되면 지금 코드가 CGI를 쓰냐 아니냐는 것은 별로 중요하지 않게 될 것입니다) MockObject를 잘 쓰는 방법 중 하나는 MockObject 사용을 뒤로 미루는 것입니다. --김창준
정말 더 잘게 쪼개면 CGI냐 아니냐 상관이 없겠네요..^^; (
picxenk님에게 들은 말과 비슷) 조프는 XML-RPC를 사용하는 방법이 있었군요.
Testing Zope with XML-RPC --
영후
UnitTest는 꼭 시스템 실행상황을 테스트할 필요가 없습니다. 조프 경우도 XML-RPC를 통한 테스트는 최소화 하는 것이(혹은 layer화해서 layer별로 독립 테스트) 좋습니다. --김창준