2013-12-16 10 views
6

나는 몇 가지 무효화 된 메소드를 가지고 있으며, 테스트 할 필요가있다.하지만 어떻게해야 할 지 잘 모르겠다. Assert를 사용하여 무언가를 반환하는 메서드를 테스트하는 방법을 알고 있습니다. 누군가 그것을하는 방법을 알고 있습니까? 여러분들은이 스타일의 운동을하는 링크를 알고 있습니까?void 메소드를 테스트하려면 어떻게해야합니까?

+0

외부에서 관찰 할 수있는 방법을 수행하지 않으면 어떤 유용한 작업을 수행하고 있습니까? –

답변

10

당신은 두 가지 테스트 할 수 있습니다 무효 메서드 호출 (상태 기반 테스트) 무효 메소드 호출 (상호 작용 시험)

첫 번째 방법 중 종속

  • 상호 작용 후

    • 국가 변경 간단합니다 (NUnit 샘플) :

      var sut = new Sut(); 
      sut.Excercise(foo); 
      Assert.That(sut.State, Is.EqualTo(expectedState)); // verify sut state 
      

      두 번째 방법은 의 mocks (MOQ 샘플) : 적절한 예외가 발생하는 경우

      var dependencyMock = new Mock<IDependency>(); 
      dependencyMock.Setup(d => d.Something(bar)); // setup interaction 
      var sut = new Sut(dependencyMock.Object); 
      sut.Excercise(foo); 
      dependencyMock.VerifyAll(); // verify sut interacted with dependency 
      

      글쎄, 당신은 또한 테스트 할 수 있습니다.

  • 관련 문제