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:
16
.cursor/mcp.json
Normal file
16
.cursor/mcp.json
Normal 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"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
2
.gitignore
vendored
2
.gitignore
vendored
@@ -41,3 +41,5 @@ workpath/
|
||||
.env
|
||||
|
||||
/context/
|
||||
*.log
|
||||
tools/mcp-test-runner/local-env-config.yml
|
3
Jenkinsfile
vendored
3
Jenkinsfile
vendored
@@ -1,3 +0,0 @@
|
||||
@Library('onec-ci-cd@feature/refactoring')_
|
||||
|
||||
pipelineStart();
|
49
memory-bank/projectbrief.md
Normal file
49
memory-bank/projectbrief.md
Normal 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`
|
||||
|
||||
|
46
memory-bank/techContext.md
Normal file
46
memory-bank/techContext.md
Normal 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`)
|
||||
|
||||
|
44
tools/mcp-test-runner/project-config.yml
Normal file
44
tools/mcp-test-runner/project-config.yml
Normal 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
|
Reference in New Issue
Block a user