단위 테스트는 모두 단위 테스트, 즉 한 번에 한 가지 테스트에 관한 것입니다. 많은 세부 사항
당신은 나를 어떻게 단위 테스트이 생성자 및 GetCollectionObjects
방법을 이해하는 데 도움이 바랍니다 수 있습니까?
첫 번째 사항은 먼저 기기를 MyCollection
클래스 테스트를 받았습니까?
그렇지 않은 경우 종속성 삽입의 기본이되는 MyClassConstructor
클래스에 따라 시작해야합니다. 그렇지 않으면, 결과가 옳고 그른지를 어떻게 알 수 있습니까? 당신은 테스트를 할 수 없으며 그것이 완벽하게 작동하는지 확신 할 수 없습니다.
클래스를 어떻게 완벽하게 분리합니까? IoC를 사용하여 대답을 줄 수 있습니다. 개념을 이해하고 싶습니다.
내 겸손한 관점에서, 의존성 주입을 사용하여 다른 객체에 종속적 인 객체를 만들어야하는 분명한 이유가 있어야합니다. 객체를 다른 객체에 의존하게하면, 제 생각에 객체를 분리 할 수 없습니다. 디커플링의 한 가지 방법은 엔터프라이즈 라이브러리의 Unity Application Block을 사용하는 것입니다.
단위 테스트
당신은 일반적으로 그러한 생성자를 테스트하는 동안 세 가지를 확인하기 위해 필요한이 생성자.
- 생성자가 null 값을 반환하지 않는다.
- 반환하는 인스턴스의 유형이 예상됩니다.
- 종속성을 통해 인스턴스화 할 것으로 예상되는 개체가 실제로 시작됩니다.
[TestCase("message")]
public void DependentConstructorTest(string message) {
MyClassConstructor myclass = new MyClassConstructor(message);
Assert.IsNotNull(myclass);
Assert.IsInstanceOf(typeof(MyClassConstructor), myclass);
Assert.IsNotNull(myclass.MyCollection); // Where MyCollection represents the property that
// exposes the instance created of the object from
// which your MyClassConstructor class depends on.
}
주 :이 시험은 NUnit과 속성과 주장 방법을 사용하여 작성됩니다. 다른 사람이 좋아하는 것을 사용하십시오.
+1 물어볼 자격이 있습니다. =) –