Среды разработки сегодня содержат так много различных инструментов, что просто ошеломительно, как люди даже выбирают, какие из них использовать. Я уверен, что у вас уже есть SCM, система CI, тестовая среда, инструмент покрытия кода, средство проверки качества кода и т. д. Так вам действительно нужен еще один инструмент?

Почти для каждой проблемы, которая может возникнуть во время разработки, есть инструмент, который утверждает, что решает эту проблему за вас. Подумайте о безопасности, и я уверен, что на ум приходят FindSecBugs, Fortify и Coverity. Подумайте о CI и Travis, на ум приходят GitLab и Jenkins. Для покрытия кода это Jacoco, Cobertura и SonarQube.

У всех этих инструментов есть одна общая черта. Они очень хорошо говорят вам, что ваша работа плоха. Когда я думаю о сканерах уязвимостей, я думаю об отчете, который получаю:

В нем будет сказано, что я либо выполнил, либо не выполнил стандарты своей компании, например. никакие новые критические уязвимости не могут быть введены.

Вот, я смотрю еще один отчет о вашем PR. Я пропустил цель покрытия кода. Вот типичный отчет о покрытии кода, показывающий красным цветом недостающее покрытие:

Отлично, спасибо, что сказали мне, что мой код не подходит, и оставили меня, чтобы выяснить, как решить проблему. Я могу ожидать, что следующие полдня потрачу на то, чтобы добавить тестовые случаи, чтобы покрыть некоторые крайние случаи в моем коде.

Должен быть лучший способ.

По шагам Diffblue Cover. Конечно, при анализе вашего кода и набора тестов Diffblue Cover сообщит о вашей текущей метрике покрытия. Однако, в отличие от других инструментов, это не останавливается на достигнутом. Diffblue Cover продолжит генерировать примеры тестов, которые охватывают другие пути в вашем коде. Это означает, что после быстрого просмотра сгенерированных тестов вы можете внести любые обновления, необходимые для получения полного и всеобъемлющего набора тестов для вашего PR.

В отличие от предыдущего снимка экрана, на котором красным цветом обозначено отсутствие покрытия, здесь мы показываем синий цвет, что означает, что тест был сгенерирован.

По сути, Diffblue Cover был разработан, чтобы помочь вам решить ваши проблемы, а не просто указать на них. Это означает, что в мире, где в центре внимания ваши PR, есть инструмент, который на самом деле поможет вам работать быстрее и эффективнее.

Вас также могут заинтересовать:

Первоначально опубликовано на https://www.diffblue.com 2 декабря 2019 г.