Найти в Дзене

AI инструмент для покрытия кода тестами. Ollama + Bun + React.

Добрый день! 👋 Давно подготовил решение, которым пользуюсь для покрытия кода тестами с помощью нейросети в том или ином frontend/web проекте. В статье дам ссылку и расскажу вкратце что из себя представляет такой проект. Ссылка на репозиторий проекта - https://github.com/G28XYZ/ai-testing-tool В репозитории есть описание как запустить проект. Руководство как использовать можно посмотреть по приложенному gif в описании, но все достаточно просто. Запустив проект, создайте чат, выберите модель, выберите файлы которые нужно покрыть тестами, и нажмите кнопку CREATE TEST. В поле для ввода текста можно скорректировать ответ нейросети, и нажать повторно кнопку, она перепишет результат полностью с учетом комментариев. Так же прям в интерфейсе можно вызвать консоль, и выполнить команду для запуска тестов чтобы проверить результат, если что-то не прошло тесты, возвращаемся в комментарии и пишем эти проблемы нейронке, или пробуем исправить в ручную если это простые моменты. API нейросети используе

Добрый день! 👋

Давно подготовил решение, которым пользуюсь для покрытия кода тестами с помощью нейросети в том или ином frontend/web проекте. В статье дам ссылку и расскажу вкратце что из себя представляет такой проект.

Схема проекта
Схема проекта

Ссылка на репозиторий проекта - https://github.com/G28XYZ/ai-testing-tool

В репозитории есть описание как запустить проект. Руководство как использовать можно посмотреть по приложенному gif в описании, но все достаточно просто. Запустив проект, создайте чат, выберите модель, выберите файлы которые нужно покрыть тестами, и нажмите кнопку CREATE TEST. В поле для ввода текста можно скорректировать ответ нейросети, и нажать повторно кнопку, она перепишет результат полностью с учетом комментариев. Так же прям в интерфейсе можно вызвать консоль, и выполнить команду для запуска тестов чтобы проверить результат, если что-то не прошло тесты, возвращаемся в комментарии и пишем эти проблемы нейронке, или пробуем исправить в ручную если это простые моменты.

API нейросети используется от Ollama, поэтому предварительно нужно скачать на оф.сайте и установить (https://ollama.com/). Модели устанавливаются через консоль, на оф сайте можно посмотреть команды для установки интересующей модели.

пример: ollama run deepseek-r1:32b

Фронтенд проекта написан на реакте, сборщик на vite.
Бэкенд проекта написан на typescript, сервер поднимается с помощью
bun, бд - sqlite с использованием ORM drizzle
Запускаются все модули с помощью lerna

Вот в принципе и все, по схеме выше видно как все взаимодействует, что куда идет и что запущенно.

Картинка сгенерирована нейросетью
Картинка сгенерирована нейросетью

Удачи в запуске и написании тестов! 😄
В будущих статьях разобью этот проект на части, и опишу некоторые фичи отдельно, например как взаимодействовать/отрисовать терминал в вебе.

upd: написал статью про терминал в браузере - Создаём терминал в браузере на React + Vite + Bun