최근 테스트 케이스를 만들다가 자료 구조의 Mutability 때문에 고생을 한적이 있습니다. 결과를 먼저 얘기하자면 Immutable한 자료구조를 사용해서 이런 결과가 있었기 때문이었죠. 이 이슈의 Root cause는 코드 Implementation에는 ArrayList를 사용하고 테스트 케이스를 만들 때 mock list를 "List.of"를 사용했기 때문이죠. 왜 이런 이슈가 생긴걸까요? List.of() List.of()를 선언하고 class type을 본다면 뭐가 나올까요? ArrayList? LinkedList? 답을 말 하자면 둘 다 아닙니다. ArrayList와 LinkedList는 Collection 프레임워크의 Interface로서 객체를 insert, delete and update..