1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2025-10-06 22:06:59 +02:00

feat: подключение mcp-test-runner

This commit is contained in:
Aleksey Ko
2025-08-12 20:34:47 +03:00
parent e811593d09
commit 97482841bd
6 changed files with 158 additions and 4 deletions

16
.cursor/mcp.json Normal file
View File

@@ -0,0 +1,16 @@
{
"mcpServers": {
"yaxunit-runner": {
"type": "stdio",
"command": "java",
"args": [
"-jar",
"tools/mcp-test-runner/mcp-yaxunit-runner.jar"
],
"env": {
"LOGGING_LEVEL_ROOT": "DEBUG",
"SPRING_CONFIG_IMPORT": "file:tools/mcp-test-runner/project-config.yml, file:tools/mcp-test-runner/local-env-config.yml"
}
}
}
}

4
.gitignore vendored
View File

@@ -40,4 +40,6 @@ documentation/api/
workpath/
.env
/context/
/context/
*.log
tools/mcp-test-runner/local-env-config.yml

3
Jenkinsfile vendored
View File

@@ -1,3 +0,0 @@
@Library('onec-ci-cd@feature/refactoring')_
pipelineStart();

View File

@@ -0,0 +1,49 @@
### Проектный контекст (YAxUnit)
— Обновлено: автоматически из репозитория на момент генерации.
#### Краткое описание
YAxUnit — открытый тестовый фреймворк для 1С:Предприятие, предоставляющий модульное тестирование, мокирование, утверждения, отчётность и интеграцию с CI/CD.
#### Цели и ценность
- Упростить написание и выполнение автоматизированных тестов для 1С
- Обеспечить качественные отчёты (jUnit для CI, Allure для аналитики)
- Содействовать стандартам качества и открытой разработке
#### Основные возможности
- Тестовые кейсы и наборы, контекст выполнения
- Утверждения, предикаты, вспомогательные модули
- Мокито-подобное мокирование и перехват
- Генерация отчётов (jUnit, Allure), интеграция с конвейерами
- Дымовые тесты на базе YAxUnit (`exts/smoke`)
#### Артефакты и структура
- Расширения 1С: `exts/yaxunit`, `exts/smoke`
- Тесты: `tests/src` (пример использования фреймворка)
- Демо-конфигурация: `fixtures/demo-configuration`
- Документация: `documentation/` (Docusaurus)
#### Текущее состояние и задачи
- Активная ветка: `feature/multiple-report-formats`
- Задача: множественные форматы отчётов одновременно (см. `memory-bank/tasks.md`, Issue #513)
#### Заинтересованные стороны
- Сообщество 1С-разработчиков (open-source)
- Внутренние и внешние команды, использующие CI/CD конвейеры
#### Процессы и качество
- CI: GitHub Actions (анализ, тесты, документация), Jenkins (`Jenkinsfile`)
- Аналитика качества: SonarQube (значки в `README.md`)
- Лицензия: Apache-2.0
#### Риски и ограничения
- Совместимость версий платформы 1С и EDT (см. `tools/local-test/default.env`)
- Обратная совместимость при изменении формата параметров запуска
- Зависимость от окружения Docker для локального запуска
#### Ссылки
- Документация: `https://bia-technologies.github.io/yaxunit/`
- Репозиторий: `https://github.com/bia-technologies/yaxunit`
- Обсуждение: `https://t.me/BIAOpenTools/12`

View File

@@ -0,0 +1,46 @@
### Технический контекст
— Обновлено: автоматически из репозитория на момент генерации.
#### Платформа и язык
- **Платформа**: 1С:Предприятие 8.3.21.1895 (см. `tools/local-test/default.env`)
- **Язык**: BSL (1С)
- ** IDE/Инструменты разработки**: 1C:EDT 2023.3.5+10, Конфигуратор 1С
#### Состав репозитория и модули
- **Расширения 1С**:
- `exts/yaxunit/src` — основной движок YAxUnit
- `exts/smoke/src` — дымовой тест-движок на базе YAxUnit
- **Тесты**: `tests/src` — модульные тесты на YAxUnit
- **Демо-конфигурация для тестов**: `fixtures/demo-configuration`
- **Схема jUnit**: `fixtures/junit/JUnit.xsd`
- **Документация**: `documentation/` (Docusaurus, Node/Yarn), сборка — `documentation/build-full-doc.sh`
#### Локальная среда и инфраструктура
- **Локальный сервер 1С (Docker)**: `tools/local-test/onec-server/`
- `docker-compose.yml`, `build/Dockerfile`, `build/conf.cfg`, `build/logcfg.xml`
- Скрипты установки/обновления: `build/scripts/*.sh`
- **Переменные окружения**: `tools/local-test/default.env` (`ONEC_VERSION`, `EDT_VERSION`)
#### CI/CD и качество
- **GitHub Actions**: значки в `README.md` — анализ Sonar, тесты, сборка документации
- **SonarQube**: `openbsl` Quality Gate/метрики
#### Отчётность тестов
- Поддерживаемые форматы отчётов: **jUnit**, **Allure** (см. документацию в `documentation/docs/features/reports/` и API `documentation/api/ЮТАлюр.md`)
- Текущая задача ветки `feature/multiple-report-formats`: параллельная генерация нескольких форматов (см. `memory-bank/tasks.md`)
#### Стандарты и соглашения
- Отступы — табуляция
- Генерировать док-комментарии для экспортных методов (к тестам не применять)
- Проверка контекста исполнения — сначала `#Если Сервер Тогда ... #Иначе ... #КонецЕсли`
- Именование и структура модулей — согласно стандартам 1С (процедуры/функции, области, обработка ошибок через «Попытка-Исключение»)
#### Интеграции и коммуникации
- **Документация**: сайт на Docusaurus (см. значок в `README.md`)
- **Телеграм**: `t.me/BIAOpenTools/12` (ссылка в `README.md`)
#### Лицензирование
- Apache License 2.0 (см. `LICENSE` и `README.md`)

View File

@@ -0,0 +1,44 @@
# Настройки для проекта YAxUnit
# Профиль: yaxunit
# Базовые настройки приложения
app:
id: yaxunit
format: EDT
# Набор исходного кода проекта
source-set:
# Основная конфигурация YAxUnit (движок)
- path: "fixtures/demo-configuration"
name: configuration
type: "CONFIGURATION"
purpose: [ "TESTS" ]
# Основная конфигурация YAxUnit (движок)
- path: "exts/yaxunit"
name: yaxunit
type: "EXTENSION"
purpose: [ "MAIN", "YAXUNIT" ]
# Основная конфигурация YAxUnit (движок)
- path: "exts/smoke"
name: smoke
type: "EXTENSION"
purpose: [ "MAIN", "YAXUNIT" ]
# Тесты YAxUnit
- path: "tests"
name: tests
type: "EXTENSION"
purpose: [ "TESTS" ]
# Настройки инструментов
tools:
# Тип сборщика: DESIGNER или IBMCMD
builder: DESIGNER
# Настройки EDT CLI
edt-cli:
auto-start: true
startup-timeout-ms: 300000 # 5 минут
command-timeout-ms: 600000 # 10 минут
ready-check-timeout-ms: 5000