2011-08-07 7 views
3

보통 클래스 당 단위 테스트는 문제가되지 않습니다. 그러나 파이썬으로 어지러운 후에 나는 다른 언어, 메타 클래스 및 내부 클래스에서 전에 만나지 못한 문제를 쳤다.단위 테스트 메타 클래스 및 파이썬 내부 클래스

내부 클래스가 포함되어 있고 메타 클래스가있는 클래스가 있다고 가정하면이 상황에 대한 단위 테스트를 구성하는 가장 좋은 방법은 무엇입니까?

어쨌든 단단히 결합 된 단일 테스트 모듈에서이 세 가지를 모두 테스트 할 수 있습니다. 그러나 이것은 나에게 잘못된 것처럼 보인다. 하지만 어떻게 그것의 메타 클래스를 테스트 단위로, 그 메타 클래스를 사용하는 테스트 내에서 더미 클래스를 만들까요 ??

귀하의 의견 제발 stackoverflow하시기 바랍니다!

답변

3

클래스를 인스턴스화하여 테스트합니다. 여러분이 언급 한 "더미 클래스"는 메타 클래스의 인스턴스가 될 것이므로 정확히 테스트해야합니다.

내부 클래스/외부 클래스를 테스트 할 때 - 예, 외부 클래스의 테스트에서 내부 클래스를 테스트하는 것을 포함합니다. 외부 클래스와 독립적으로 내부 클래스를 테스트하는 것이 합리적이라면 왜 내부 클래스입니까? 모든 내부 클래스는 외부 클래스의 범위에서만 의미가 있어야합니다. 이 독립적으로 테스트하려는 인 경우 어쨌든 외부 클래스의 환경을 모방해야합니다.

+0

고마워요. @agf 내가 메인 클래스에서 상속 한 유닛 테스트에서 더미 클래스를 만들면, 이것도 메타 클래스와 내부 클래스를 동시에 테스트 할 수 있습니다. –

관련 문제