다중 스레드 코드 테스트
다중 스레드 코드에서 버그가 있다는 사실을 증명하는 테스트 케이스는 짜기 어렵다.
=> 동시 갱신 문제가 발생하는 문제는 너무 드물게 발생해서 대개는 테스트로 발견하지 못함.
테스트로 버그를 더 잘 찾아내기 위한 아이디어들
- 몬테 카를로 테스트 : 테스트로 버그를 더 잘 찾아내기 위한 아이디어. 조율이 가능하게 유연한 테스트를 만든 후 임의로 값을 조율하면서 반복해 돌린다.
- 시스템을 배치할 플랫폼 전부에서 테스트를 반복해서 돌린다.
- 부하가 변하는 장비에서 테스트를 돌린다.
그러나 위의 조치를 취하더라도 코드에서 스레드 문제를 찾아낼 가능성은 매우 낮음
스레드 코드 테스트를 도와주는 도구
IBM의 ConTest : 스레드 코드에 보조 코드를 더해 실패할 가능성을 높여주는 도구.
스레드 문제를 찾아내는 능력을 크게 높임
결론
다중 스레드 시스템을 구현하려면 알아야 할 내용이 아주 많다.
'독서일지 > 클린 코드' 카테고리의 다른 글
클린 코드 독서일지 - Day 46 (1) | 2023.12.26 |
---|---|
클린 코드 독서일지 - Day 45 (1) | 2023.12.24 |
클린 코드 독서일지 - Day 44 (0) | 2023.12.21 |
클린 코드 독서일지 - Day 43 (0) | 2023.12.20 |
클린 코드 독서일지 - Day 42 (0) | 2023.12.20 |