Lessons: Testing
The first step to writing fault tolerant and scalable code is writing bug free code. In these lessons we explore how best to test our Elixir code.
Тестирование — важная часть разработки. В этом уроке мы узнаем, как тестировать наш Elixir-код с использованием ExUnit, а также познакомимся с некоторыми отличными приёмами.
При тестировании приложений часто идет речь о запросах к внешним сервисам. Мы даже можем захотеть имитировать такие различные ситуации, как ошибки со стороны сервера. Реализация подобного подхода в Elixir требует дополнительных инструментов.
В этом уроке мы рассмотрим, как библиотека bypass может помочь с таким тестированием
Mox - это библиотека для создания параллельных моков в Elixir.
Ориентированная на примеры библиотека для модульного тестирования вроде ExUnit - это отличный инструмент, чтобы удостовериться, что ваш код работает так, как вы от него ожидаете. Тем не менее, тестирование на примерах имеет некоторые недостатки:
- Бывает легко упустить крайние случаи, так как тестируется ограниченный набор входных данных.
- Такие тесты могут быть написаны без тщательного продумывания требований к коду.
- Также они могут содержать много кода, если использовать несколько примеров для каждой функции.
В этом уроке мы узнаем, как библиотека StreamData может помочь нам справиться с этими недостатками