Автоматизированное тестирование — залог стабильной разработки качественных приложений. Полноценное тестирование должно охватывать отдельные функции, проверять интеграцию разных частей вашего кода и обеспечивать корректность с точки зрения пользователя. Книга научит вас быстро и уверенно создавать надежное программное обеспечение. Вы узнаете, как реализовать план автоматизированного тестирования для JavaScript-приложений. В издании описываются стратегии тестирования, обсуждаются полезные инструменты и библиотеки, а также объясняется, как развивать культуру, ориентированную на качество. Вы исследуете подходы к тестированию как серверных, так и клиентских приложений, а также научитесь проверять свое программное обеспечение быстрее и надежнее.
Представим, что определенное сочетание ветвей выполнения приводит к ошибке. Вы можете ее не выявить, поскольку даже если все ветви покрыты, тесты могли не пройти по тому самому сочетанию путей, из-за которого возникает дефект.
В связи с этим покрытие кода само по себе является плохим показателем. Оно помогает узнать, какие части кода программы покрыты, но ничего не говорит о покрытии возможных вариантов поведения.
Все виды покрытия важны, но обычно больше всего внимания я уделяю покрытию ветвей.
Покрытие ветвей указывает, что в ходе тестирования код прошел все возможные пути выполнения. Это гарантирует, что на каждом разветвлении, когда код должен был «принимать решение», проверялись все возможные варианты.