Hello, Freakin world!

[채팅앱][클라이언트] IO 단위 테스트 어떻게 할 것인가? 본문

Toy Project/채팅 앱 만들기

[채팅앱][클라이언트] IO 단위 테스트 어떻게 할 것인가?

johnna_endure 2020. 2. 21. 22:29

BDD 방식의 테스트도 의미가 없다. 

IO 메서드의 기능을 제대로 테스트하기 위해서는 어찌됐든 서버가 필요하다.

 

선택지는 두 가지다.

1. Mock 서버를 작성하고 다른 스레드에서 실행시킨다.

2. 실제 서버를 켜놓고 테스트를 진행.

 

1번도 번거롭고, 2번도 구리다.

 

1번이 번거로운 이유는 클라이언트의 기능 테스트가 점점 늘어날 수록 Mock서버도 커지게 된다는 점때문이다.

비동기 메서드와 테스트 메서드 간에 어떤 예외가 던져질지도 미지수다.

 

2번은 더 치명적이다. 수동으로 계속 서버를 켜줘야하며, 자동화된 테스트가 불가능하다.

 

결론 : 1번으로 진행하자... 내가 테스트의 비중을 너무 간과하고 간단하게만 해결하려고 한건지도 모른다.

테스트에 품을 더 들이자. 

 

 

 

 

Comments