Moq에서 Verifiable ()의 목적은 무엇입니까?
의 목적은 Verifiable()
무엇입니까?
내가 a를 확인하고 Mock
이것을 남겨두면 여전히을 확인합니다 SetUp
.
편집 : 나는 VerifyAll()
모든 것을 확인하는 이유를 사용 하고 있었습니다 . Verify()
내 .Verifiable()
SetUp
s 로만 변경 한 후 확인되었습니다.
부록 : 다른 답변에서 알 수 있듯이, 목적 .Verifiable
은를 통해 Setup
"지연된 Verify(...)
통화" 에 참여하도록하는 것 mock.Verify()
입니다.
영업 이익의 설명은 그것이 작동하지 않는 이유를 파악하고이 목표와 유일한 문제라고 취소,하지만 @Liam는 prodded으로, 대답은 정말 너무 이것에 닿아 야한다 : - 주요 사용 사례를 내가 할 수있는 최대한으로 참조하십시오 :
mock.Setup()
과 사이의 건조 유지mock.Verify
- 실제
Verify
전화 자체 에서 확인 구성을 분리 할 수 있습니다 (예 : 다른 도우미 방법으로 설정할 수 있음)
... 그리고 내 대답으로 돌아가서, "위의 전문가들은 그러한 목표를 달성하는 것이 그러한 구성에 너무 많이 의존하는 테스트의 가독성 및 유지 관리성에 미치는 영향으로 인해 일반적으로 중요하기 때문에주의해야합니다."
ORIGINAL : 가능한 한 대신 수행해야하는 것으로 AAA의 레이아웃을 따라서 하나가되어야 명시하고 mock.Verify( expression )
작업이 오히려보다, 수행 한 후 전화를 mock.Setup( ... ).Verifiable()
와 결합 mock.Verify()
또는mock.VerifyAll()
가능하면 (제공 : @kzu ).
Verify()
테스트가 끝날 때 메소드가 호출 될 때 검증 가능한 것으로 표시된 기대치 중 하나가 호출되지 않은 경우 예외는 thrown
입니다.
VerifyAll()
검증 가능한 기대치를 확인하지 않습니다.
참고 URL : https://stackoverflow.com/questions/980554/what-is-the-purpose-of-verifiable-in-moq
'IT story' 카테고리의 다른 글
Java에서 'SAM 유형'이란 무엇입니까? (0) | 2020.07.26 |
---|---|
JavaScript에서 Math.pow () (때때로)가 **가 아닌 이유는 무엇입니까? (0) | 2020.07.26 |
iOS 7 스타일 흐림보기 (0) | 2020.07.26 |
소스에서 데비안 / 우분투 패키지를 빌드하는 방법? (0) | 2020.07.26 |
Java Collections가 프리미티브 유형을 직접 저장할 수없는 이유는 무엇입니까? (0) | 2020.07.26 |