В современном мире разработки программных решений качество играет ключевую роль. Для решения этой задачи Microsoft предлагает мощный инструмент — Solution Checker. Этот инструмент помогает выявлять проблемы в компонентах решений, предоставляя рекомендации по их исправлению. В этой статье мы подробно рассмотрим, что такое Solution Checker, какие компоненты он анализирует, каковы его статусы и отчеты, а также как его можно использовать для улучшения качества вашего кода.
А узнать больше про Solution Checker можно в нашем видео:
Что такое Solution Checker?
Solution Checker — это инструмент для статического анализа компонентов решения в PowerApps. Он помогает разработчикам быстро выявлять проблемы и несоответствия с лучшими практиками отрасли. Этот инструмент анализирует решение и генерирует отчет, который включает рекомендации по исправлению выявленных ошибок.
Solution Checker используется для анализа различных компонентов решения, включая веб-ресурсы, SDK-конфигурации, кастомные активности, потоки и формулы Power Reference. Он предоставляет детализированный отчет, включая ссылки на документацию и описание того, как исправить те или иные проблемы.
Что мы анализируем?
Solution Checker анализирует только ограниченный набор компонентов, а именно:
Веб-ресурсы
SDK-конфигурации
Custom Workflow Activities
Потоки (Flows)
Формулы Power Reference
Эти компоненты являются основными, которые подпадают под анализ, согласно официальной документации. Все остальные компоненты не проверяются данным инструментом.
Статусы
Каждое решение в PowerApps имеет статус проверки, который отражает текущее состояние анализа. Вот основные статусы, которые могут быть назначены решению:
Не проверено: Solution Checker не был запущен.
В процессе проверки: Проверка еще не завершена.
Проверка завершена, результаты доступны: Решение прошло проверку и результаты доступны.
Просрочено: Результаты проверки устарели.
Неуспешная проверка: Проблемы были обнаружены.
Решение проверено Microsoft (для управляемых решений).
Решение проверено автором (для управляемых решений).
Эти статусы позволяют разработчикам отслеживать состояние проверки и понимать, если решение требует внимания.
Отчет
После того как Solution Checker завершит анализ, он генерирует отчет, который, как правило, представлен в виде Excel-файла. В отчете можно увидеть несколько листов:
Summary: Сводная информация с визуализациями, включая диаграммы, которые показывают проблемы по категориям и строгости.
Detailed Issues: Подробный список всех выявленных проблем, включая описание, категорию, строгость и рекомендации по исправлению.
Этот отчет помогает разработчикам не только увидеть, какие ошибки существуют в решении, но и определить их приоритетность.
Колонки отчета
Отчет Solution Checker включает 12 колонок, каждая из которых имеет свое значение:
Описание проблемы: Краткое описание проблемы, обнаруженной в решении.
Категория: Проблема может быть отнесена к одной из нескольких категорий, например, безопасность, поддерживаемость, готовность к обновлениям и т.д.
Строгость: Уровень серьезности проблемы (критическая, высокая, средняя, низкая, информационная).
Ссылка на документацию: Рекомендуемая статья для устранения проблемы.
Компонент: Указывает, в каком компоненте была найдена проблема.
Локация: Путь к файлу, в котором обнаружена ошибка.
Номер строки: Иногда включает номер строки, где возникла ошибка.
Модуль и тип: Для Custom Workflow Activities — информация о модуле и типе.
Комментарии: Дополнительные комментарии о том, как можно исправить проблему.
Эти данные помогают понять, где конкретно в решении находятся проблемы, и какие шаги нужно предпринять для их исправления.
Работа с устаревшими программами
Solution Checker не только помогает выявлять проблемы в коде, но и отслеживает использование устаревших технологий. Например, использование устаревшего API или конструкций, таких как eval в JavaScript, может быть отмечено как критическая проблема.
Инструмент выявляет такие проблемы, несмотря на то, что версия технологии может быть старой. Главное — как правильно используются конструкции языка. Например, использование устаревших API, таких как Internet Explorer Relay, автоматически помечается как серьезная проблема, так как Internet Explorer больше не поддерживается и заменен на Edge.
Рекомендации
Solution Checker базируется на ряде рекомендаций и best practices. Если код не соответствует этим рекомендациям, инструмент помечает их как нарушения. В процессе разработки важно следить за такими рекомендациями, чтобы минимизировать риски и улучшить качество решения.
Некоторые из наиболее популярных рекомендаций включают:
Избегать использования устаревших API, таких как те, которые связаны с Internet Explorer.
Удалять конструкции типа eval, которые могут создать проблемы с безопасностью.
Следить за строгими режимами и корректно использовать их в JavaScript.
Автоматизация
Solution Checker можно интегрировать в процессы автоматической сборки и деплоя. Это возможно с помощью PowerShell или npm пакетов, предоставляемых Microsoft для JavaScript-приложений.
Если у вас настроен CI/CD pipeline, вы можете использовать Solution Checker на этапе предварительной проверки решения. Это позволяет автоматически проверять решения на наличие ошибок и нарушений стандартов еще до их публикации.
Автоматизация процесса анализа помогает оперативно выявлять проблемы и исправлять их на ранних этапах разработки.
Заключение
Solution Checker — это мощный инструмент для анализа качества решений в PowerApps. Он позволяет быстро выявлять проблемы, минимизировать риски и улучшать качество кода. Использование этого инструмента в процессе разработки поможет вам создавать более стабильные и безопасные решения, соответствующие лучшим отраслевым практикам.
Понимание того, как правильно использовать Solution Checker, как интерпретировать его отчеты и как внедрить его в процессы разработки, является ключом к успеху. Постоянная проверка решений и исправление выявленных проблем позволяет повысить качество решений и гарантировать их долгосрочную стабильность и эффективность.
Comments