강의: 테스트
장애에 강하고 확장성 있는 코드를 작성하기 위한 첫 발걸음은 버그에서 자유로운 코드를 작성하는 것입니다. 이 강의에선 Elixir 코드를 테스트하는 최고의 방법을 알아봅니다.
테스트
소프트웨어 개발에서 테스트는 아주 중요합니다. 이번 수업에서는 ExUnit을 사용해서 Elixir 코드를 테스트하는 방법과 테스트하는 데 있어서 가장 효율적인 절차를 함께 살펴보도록 하겠습니다.
Mox
Mox는 동시성 있는 목(mock) 설계를 위한 Elixir 라이브러리입니다.
StreamData
ExUnit과 같은 예제 기반 테스트는 코드가 생각한 대로 동작하는지 확인하는 훌륭한 도구입니다. 그러나 예제 기반 테스트에는 몇 가지 단점이 있습니다.
- 몇 가지 입력만 테스트하기 때문에 엣지 케이스를 놓치기 쉽습니다.
- 요구사항을 충분히 고려하지 않고 테스트를 작성할 수 있습니다.
- 하나의 함수에 대해 여러 예제를 사용하는 경우 테스트가 장황해질 수 있습니다.
이 단원에서는 StreamData가 이러한 단점을 어떻게 극복하는지 알아보겠습니다.