나는 4 개의 클래스 (파이썬)의 협력을 만들었습니다. 서브 클래스 동작을 테스트 하시겠습니까?
class A:
## A, B, C are nested classes of A
class B:
...
class C:
...
class D:
...
## example methods
def newB(self):
return self.B()
def newC(self):
return self.C(self.newB())
나는 4 테스트의 경우 60 시험 방법을 작성하고이 노력했다.
B, C, D는 많은 동작을 제공하지 않으므로 A, B, C, D 클래스는 새로운 동작을 추가하기 위해 서브 클래 싱되어야합니다.
문제점 :
내가하는을 보장하기 위해 많은 테스트 코드를 작성, B, C는 바로 협력 D. A, B, C, D를 A2, B2, C2, D2로 하위 클래스 화하면 A, B, C, D를 테스트 한 것과 같은 방식으로 A2, B2, C2, D2의 동작을 테스트해야합니다.
어떻게해야합니까?
- 데이터베이스의 새 하위 클래스를 만들 때마다 모든 unittests를 하위 클래스로 만듭니다.
- 테스트 케이스와 스위트를 메소드로 생성 하시겠습니까?
- ...
어떤 서브 클래 싱 된 데이터베이스가 제대로 작동하고 실수가 거기에 없다는 것을 보장하기 위해 귀하의 사례가 될 것이다?
을 감안할 때 : unittests, 데이터베이스의 클래스와 하위 클래스 (들) 지금 존재
테스트 :
class A2(A):
...
:
class TestA(unittest.TestCase):
A = A
def setUp(self):
self.a = self.A()
def test_something(self):
...
class MockB(A.B):
...
class AWithMock(A):
B = MockB
class TestAWithMock(TestA):
A = AWithMock
def setUp(self):
self.a = self.A()
def test_something_new(self):
...
class MockB2(A.B):
...
class MockC2(A.C):
...
class MockD2(A.D):
...
class TestWithMock(unittest.TestCase):
def test_b(self):
b = MockB2()
...
def test_c(self):
...
def test_d(self):
...
숙제/나에게 할당 같은데 ... 그래도 난 틀렸다면 정정 해줘 ... –
그렇지 않은 경우는, 언어는 어렵다 우리가 이해할 수 있도록 질문을 쓰는 데 몇 분 더 신경 쓰지 않을 수 있겠습니까? –
잘못되었습니다. 그 형식은 제가 준 것입니다. 그러나 맞습니다 - 저는 집에서 이것을하고 있습니다. – User