Spy
-
[Junit] doReturn과 thenReturn프로그래밍/Junit 2022. 2. 21. 18:13
이 글은 혼자 학습한 내용을 바탕으로 작성되었습니다. 틀리거나 잘못된 정보가 있을 수 있습니다. 댓글로 알려주시면 수정하도록 하겠습니다. 1. doReturn과 thenReturn 두 메소드는 Mockito 프레임워크의 메소드로 단위 테스트 중 발생할 수 있는 어려움을 Stub을 이용하여 극복할 수 있도록 해주는 메소드입니다. doReturn과 thenReturn은 모두 Stub을 만들어 Mock과 Spy의 특정 메소드 호출 시 반환 값을 Test에 코딩된 값으로 반환되도록 해주는 메소드입니다. 비슷한 기능을 하지만 2개의 메소드의 차이에 대하여 알아보도록 하겠습니다. 2. doReturn doReturn 메소드는 when의 Spy객체 또는 Mock객체의 실제 메소드를 호출하여 Stubbing을 하지 않..
-
[Junit] Test Double Spy 상세프로그래밍/Junit 2022. 2. 14. 23:37
이 글은 혼자 학습한 내용을 바탕으로 작성되었습니다.틀리거나 잘못된 정보가 있을 수 있습니다.댓글로 알려주시면 수정하도록 하겠습니다.1. Spy와 Mock 차이Spy는 Mock과 동일하게 Test를 위해 만들어진 객체입니다. 그러나 Mock과는 다른 점이 존재합니다. Mock의 경우는 Test를 위해 실 객체의 겉모양(Class)만 가지고 있으며 속(Method)의 경우 Stub을 통해 동작할 내용을 지정하여야 합니다. 그러나 Spy의 경우는 실제 객체와 동일한 겉모양(Class) 뿐만 아니라 구현 또한 동일하게 동작합니다. 또한 실제 구현된 내용 중 일부분을 Stub을 통해 Test 내용으로 변경 또한 가능합니다. 작성한 Class들을 확인해 보겠습니다. FileService Class를 보면 생성자로..
-
[Junit] Test Double프로그래밍/Junit 2022. 2. 8. 01:37
이 글은 혼자 학습한 내용을 바탕으로 작성되었습니다. 틀리거나 잘못된 정보가 있을 수 있습니다. 댓글로 알려주시면 수정하도록 하겠습니다. 1. Test Double 테스트 더블(Test Double)은 제라드 메스자로스에 의해서 탄생한 단어로 테스트 자동화 과정에서 테스트 진행이 어려운 경우 이를 대신하여 테스트 진행이 가능하도록 만들어 주는 객체를 말합니다. Test Double은 큰 의미에서 테스트 진행이 가능하도록 만들어주는 객체를 말하며 아래 5가지의 세부 종류로 나눌 수 있습니다. Test Double 종류 Test Spy Mock Dummy Object Test Stub Fake Object 2. Test Spy Test Stub 처럼 실제 동작을 수행하는 것이 아닌 미리 준비해둔 결과가 반환..