Conversation
WalkthroughДобавлено свойство Changes
Sequence Diagram(s)sequenceDiagram
participant Runner as Тестовый раннер
participant Setup as ПередЗапускомТеста()
participant Test as Тестовая процедура
participant Sonar as SonarScanner
Runner->>Setup: вызвать подготовку (&ПередКаждым)
note right of Setup `#DDEBF7`: выполняется перед каждым тестом
Runner->>Test: запрос на запуск теста
alt OneScript < 2.0.0-rc
Test->>Runner: выполняется
else OneScript >= 2.0.0-rc
Note over Test: тест отключён через &ВыключенДляOneScript(">=2.0.0-rc")
end
Runner->>Sonar: запуск анализа (включая отчёт тестов)
Sonar->>Sonar: читает out/genericExecution.xml (sonar.testExecutionReportPaths)
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
tests/alltest.os (1)
393-707: Общая рекомендация по исключенным тестам.Все тесты с аннотацией
&ВыключенДляOneScript(">=2")относятся к функциональности веб-сокетов и SSE. Было бы полезно добавить комментарий с объяснением причины несовместимости этих тестов с OneScript 2.0+, а также план по их адаптации или альтернативному тестированию этой функциональности в будущем.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (2)
.github/workflows/qa.ymlis excluded by!**/*.yml.github/workflows/testing.ymlis excluded by!**/*.yml
📒 Files selected for processing (2)
sonar-project.properties(1 hunks)tests/alltest.os(9 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (2)
- GitHub Check: sonar / test
- GitHub Check: test (dev) / build (macos-latest, dev)
🔇 Additional comments (9)
sonar-project.properties (1)
7-7: Отличное добавление для интеграции с SonarQube.Добавление свойства
sonar.testExecutionReportPaths=out/genericExecution.xmlпозволит SonarQube получать информацию о выполненных тестах, что улучшит анализ качества кода и повысит отслеживаемость тестового покрытия.tests/alltest.os (8)
7-7: Правильное использование аннотации&ПередКаждым.Добавление аннотации
&ПередКаждымдля процедурыПередЗапускомТестасоответствует лучшим практикам тестирования, обеспечивая запуск подготовительного кода перед каждым тестом.
393-394: Корректное исключение несовместимых тестов.Аннотация
&ВыключенДляOneScript(">=2")правильно исключает тест, который не проходит в OneScript версии 2.0 и выше.
565-566: Корректное исключение несовместимых тестов.Аннотация
&ВыключенДляOneScript(">=2")правильно отключает тестССЕКлиентПодключился, который не работает в OneScript версии 2.0 и выше.
581-582: Корректное исключение несовместимых тестов.Аннотация
&ВыключенДляOneScript(">=2")правильно отключает тестССЕОтправитьВсем, который не работает в OneScript версии 2.0 и выше.
609-610: Корректное исключение несовместимых тестов.Аннотация
&ВыключенДляOneScript(">=2")правильно отключает тестССЕОтправитьВсемКастомныйТип, который не работает в OneScript версии 2.0 и выше.
633-634: Корректное исключение несовместимых тестов.Аннотация
&ВыключенДляOneScript(">=2")правильно отключает тестССЕОтправитьТолько, который не работает в OneScript версии 2.0 и выше.
659-660: Корректное исключение несовместимых тестов.Аннотация
&ВыключенДляOneScript(">=2")правильно отключает тестССЕОтправитьКроме, который не работает в OneScript версии 2.0 и выше.
689-690: Корректное исключение несовместимых тестов.Аннотация
&ВыключенДляOneScript(">=2")правильно отключает тестССЕПодпискаНаЗакрытие, который не работает в OneScript версии 2.0 и выше.
db00c2e to
d23691e
Compare
|
@sfaqer Привет. Ты будешь еще что-то делать? висит в драфте. Яб смержил |
Привет, там синхронный реквест в воркфлоу висит на ревью у @nixel2007 надо финализироваться по структуре этих самых воркфлоу, и я тогда драфт сниму.) |
d23691e to
b78a9a5
Compare
Этот коммит улучшает конвейер CI/CD и интеграцию с SonarQube.
В частности:
* Обновляет рабочий процесс qa.yml для использования повторно используемого рабочего процесса для анализа SonarQube.
* Обновляет рабочий процесс testing.yml для использования повторно используемого рабочего процесса тестирования.
* Добавляет sonar.testExecutionReportPaths в sonar-project.properties для отчетности о выполнении тестов.
* Добавляет &ВыключенДляOneScript(">=2") к тестам, которые не проходят на OneScript >= 2.
b78a9a5 to
aa408e0
Compare
|
|
@Nivanchenko Готово!) |
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
tests/alltest.os (1)
410-412: Деактивация нестабильных WebSocket/SSE‑тестов через&ВыключенДляOneScript(">=2.0.0-rc")оправдана, но стоит задокументировать причину и перепроверить условие версииДобавление
&ВыключенДляOneScript(">=2.0.0-rc")к тестамДолжен_ПроверитьРукопожатиеВебСокетаи всем SSE‑сценариям понятным образом стабилизирует прогоны на OneScript 2.x, но есть несколько моментов, которые лучше прояснить:
Документация причины отключения. Сейчас по коду не видно, чем именно версия
>=2.xломает эти тесты (изменение поведения TCP/СSE, тайминги, протокол и т.п.). Рекомендуется:
- добавить короткий комментарий над первой такой директивой (или ссылку на issue/PR в трекере), чтобы позже было понятно, когда и при каких условиях эти тесты стоит вернуть;
- по возможности, описать ожидаемое поведение на 2.x, чтобы в будущем можно было переписать тесты под новую реализацию, а не просто держать их вечно выключенными.
Проверка семантики сравнения версии. Формат
">=2.0.0-rc"выглядит разумным, но важно убедиться, что конкретный раннер/фреймворк корректно:
- воспринимает суффикс
-rcи сравнивает такие версии по ожидаемым правилам (включая будущие 2.0.0, 2.1.0 и т.д.);- не имеет неожиданных эффектов для версий вроде
2.0.0-betaили nightly‑сборок.Время выполнения одного из отключённых тестов. В
ССЕПодпискаНаЗакрытие()остаётсяПриостановить(20000), что даёт до 20 секунд ожидания в одном тесте. Это может быть болезненно даже на тех версиях OneScript, где тест включён. Когда будете возвращать его в общий прогон, имеет смысл подумать о более коротком ожидании или механизме опроса состояния, чтобы уменьшить время CI.В остальном идея изолировать проблемные сценарии по версии интерпретатора выглядит корректной и вписывается в цель стабилизировать конвейер.
Also applies to: 583-600, 627-652, 677-708
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (2)
.github/workflows/qa.ymlis excluded by!**/*.yml.github/workflows/testing.ymlis excluded by!**/*.yml
📒 Files selected for processing (2)
sonar-project.properties(1 hunks)tests/alltest.os(9 hunks)
🔇 Additional comments (3)
sonar-project.properties (1)
7-7: Путь к отчёту о выполнении тестов выглядит согласованным, но важно проверить соответствие с CI-артефактами
sonar.testExecutionReportPaths=out/genericExecution.xmlлогично дополняетsonar.coverageReportPathsи выглядит корректно для Generic Test Execution. Проверьте, что пайплайн действительно сохраняет XML отчёт именно под этим путём и в ожидаемом формате, иначе SonarQube просто проигнорирует данные по запуску тестов.tests/alltest.os (2)
7-10: Инициализация сервера через&ПередКаждымвыглядит разумно, но убедитесь в согласованности с тест‑фреймворкомПеренос вызова
ВключитьСервер()в процедуру с атрибутом&ПередКаждымхорошо решает проблему отсутствия инициализации перед отдельными тестами; внутри уже есть защита через проверкуПоделка = Неопределено, так что лишние перезапуски сервера не появятся. Проверьте, что именно этот атрибут и такое имя процедуры корректно подхватываются вашим тест‑раннером как хук «before each», и что нет параллельного механизма (например, другого набора фикстур), который теперь станет дублирующим.
748-748: Изменение хвоста файла не влияет на поведениеОтметка изменения у
КонецПроцедурыв конце файла выглядит как правка только форматирования/конца файла и на выполнение тестов не влияет. Можно оставить как есть.

0 New Issues
0 Fixed Issues
0 Accepted Issues
No data about coverage (58.50% Estimated after merge)
Этот коммит улучшает конвейер CI/CD и интеграцию с SonarQube.
В частности: