Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

337 / Оптимизация клиент-серверного взаимодействия при выполнении тестов #361

Merged
merged 12 commits into from
May 27, 2024

Conversation

alkoleft
Copy link
Member

Описание изменений

  • Оптимизация описаний тестов/наборов/модулей, убрал ссылки на родителей
  • Хранение на сервере копии описания тестов
  • Вызов серверных обработчиков событий для клиентских тестов
  • Исправления по логированию на сервере
  • Рефакторинг

  • Добавлены тесты
  • Изменения отражены в документации (при необходимости)

Close #337

@@ -103,4 +106,24 @@

КонецФункции

Процедура ПриоритезироватьОбработчикиСобытий(ГруппаОбработчиков, Модули)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Возможная опечатка в "Приоритезировать" Why is this an issue?

CODE_SMELL Codesmell  INFO Info  :hourglass: 1min effort

КонецФункции

#Если Сервер Тогда
Функция СерверныйВызовОбработкиСобытияИсполненияТестов(ИмяСобытия, ИдентификаторМодуля = Неопределено, ИдентификаторНабора = Неопределено, ИдентификаторТеста = Неопределено) Экспорт
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Длина строки 181 превышает максимально допустимую 150 Why is this an issue?

CODE_SMELL Codesmell  MINOR Minor  :hourglass: 1min effort

Возврат СтрШаблон("%1.%2", Дата, Формат(УниверсальнаяДатаВМиллисекундах % 1000, "ЧЦ=3; ЧН=000; ЧВН=; ЧГ=0;"));
ФорматДата = ?(ТолькоВремя, "ДФ='HH:mm:ss';", "ДФ='dd.MM.yyyy HH:mm:ss';");
ФорматМиллисекунды = "ЧЦ=3; ЧН=000; ЧВН=; ЧГ=0;";
Возврат СтрШаблон("%1.%2", Формат(Дата, ФорматДата), Формат(УниверсальнаяДатаВМиллисекундах % 1000, ФорматМиллисекунды));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Создайте константу с понятным названием, присвойте ей значение "1000" и используйте эту константу вместо магического числа. Why is this an issue?

CODE_SMELL Codesmell  MINOR Minor  :hourglass: 1min effort

//
// Возвращаемое значение:
// Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов - Результат прогона наборов тестов, структура набора см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов
Функция ВыполнитьГруппуНаборовТестов(Знач Наборы, Знач ТестовыйМодуль) Экспорт
Функция ВыполнитьГруппуНаборовТестов(Знач ИдентификаторыТестовыхНаборов, Знач ИдентификаторТестовогоМодуля) Экспорт
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Необходимо добавить описание параметра "ИдентификаторыТестовыхНаборов" Why is this an issue?

CODE_SMELL Codesmell  MAJOR Major  :hourglass: 5min effort

ПредставлениеРежима = СтрШаблон(" [%1]", РезультатТеста.Режим);
ПолныйИдентификаторТеста = СтрШаблон("%1_%2_%3", РезультатТеста.НомерВНаборе, РезультатТеста.ПолноеИмяМетода, РезультатТеста.Режим);
ПолныйИдентификаторТеста = СтрШаблон("%1_%2.3_%4", РезультатТеста.НомерВНаборе, ПолноеИмяМетода, РезультатТеста.Режим);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Исправьте передачу параметров при вызове метода "СтрШаблон" Why is this an issue?

BUG Bug  BLOCKER Blocker  :hourglass: 1min effort


#Область СлужебныйПрограммныйИнтерфейс

Функция НовыйИсполняемый(ОписаниеБазовогоОбъекта)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Переместите неэкспортный метод "НовыйИсполняемый" из области "СлужебныйПрограммныйИнтерфейс" Why is this an issue?

CODE_SMELL Codesmell  MAJOR Major  :hourglass: 1min effort


#Область СлужебныйПрограммныйИнтерфейс

Функция НовыйИсполняемый(ОписаниеБазовогоОбъекта)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Метод "НовыйИсполняемый" не вызывается в теле модуля Why is this an issue?

CODE_SMELL Codesmell  MAJOR Major  :hourglass: 1min effort


#Область СлужебныйПрограммныйИнтерфейс

Функция НовыйИсполняемый(ОписаниеБазовогоОбъекта)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Функция не содержит "Возврат" Why is this an issue?

BUG Bug  MAJOR Major  :hourglass: 10min effort


КонецФункции

Функция РезультатТесирования(ДанныеИсполняемого) Экспорт
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Возможная опечатка в "Тесирования" Why is this an issue?

CODE_SMELL Codesmell  INFO Info  :hourglass: 1min effort


КонецФункции

Функция РезультатТесирования(ДанныеИсполняемого) Экспорт
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Функция не содержит "Возврат" Why is this an issue?

BUG Bug  MAJOR Major  :hourglass: 10min effort

Copy link
Contributor

github-actions bot commented May 27, 2024

SonarQube Code Analytics

Quality Gate passed

passed

Additional information

The following metrics might not affect the Quality Gate status but improving them will improve your project code quality.

Issues

bug 0 Bugs

vulnerability 0 Vulnerabilities

code_smell 0 Code Smells

Coverage and Duplications

No data Coverage

duplication_lt_3 0.00% Duplication

@@ -103,4 +106,24 @@

КонецФункции

Процедура ПриоритезироватьОбработчикиСобытий(ГруппаОбработчиков, Модули)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Возможная опечатка в "Приоритезировать" Why is this an issue?

CODE_SMELL Codesmell  INFO Info  :hourglass: 1min effort

КонецФункции

#Если Сервер Тогда
Функция СерверныйВызовОбработкиСобытияИсполненияТестов(ИмяСобытия, ИдентификаторМодуля = Неопределено, ИдентификаторНабора = Неопределено, ИдентификаторТеста = Неопределено) Экспорт
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Длина строки 181 превышает максимально допустимую 150 Why is this an issue?

CODE_SMELL Codesmell  MINOR Minor  :hourglass: 1min effort

Возврат СтрШаблон("%1.%2", Дата, Формат(УниверсальнаяДатаВМиллисекундах % 1000, "ЧЦ=3; ЧН=000; ЧВН=; ЧГ=0;"));
ФорматДата = ?(ТолькоВремя, "ДФ='HH:mm:ss';", "ДФ='dd.MM.yyyy HH:mm:ss';");
ФорматМиллисекунды = "ЧЦ=3; ЧН=000; ЧВН=; ЧГ=0;";
Возврат СтрШаблон("%1.%2", Формат(Дата, ФорматДата), Формат(УниверсальнаяДатаВМиллисекундах % 1000, ФорматМиллисекунды));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Создайте константу с понятным названием, присвойте ей значение "1000" и используйте эту константу вместо магического числа. Why is this an issue?

CODE_SMELL Codesmell  MINOR Minor  :hourglass: 1min effort

//
// Возвращаемое значение:
// Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов - Результат прогона наборов тестов, структура набора см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов
Функция ВыполнитьГруппуНаборовТестов(Знач Наборы, Знач ТестовыйМодуль) Экспорт
Функция ВыполнитьГруппуНаборовТестов(Знач ИдентификаторыТестовыхНаборов, Знач ИдентификаторТестовогоМодуля) Экспорт
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Необходимо добавить описание параметра "ИдентификаторыТестовыхНаборов" Why is this an issue?

CODE_SMELL Codesmell  MAJOR Major  :hourglass: 5min effort

ПредставлениеРежима = СтрШаблон(" [%1]", РезультатТеста.Режим);
ПолныйИдентификаторТеста = СтрШаблон("%1_%2_%3", РезультатТеста.НомерВНаборе, РезультатТеста.ПолноеИмяМетода, РезультатТеста.Режим);
ПолныйИдентификаторТеста = СтрШаблон("%1_%2.3_%4", РезультатТеста.НомерВНаборе, ПолноеИмяМетода, РезультатТеста.Режим);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Исправьте передачу параметров при вызове метода "СтрШаблон" Why is this an issue?

BUG Bug  BLOCKER Blocker  :hourglass: 1min effort


#Область СлужебныйПрограммныйИнтерфейс

Функция НовыйИсполняемый(ОписаниеБазовогоОбъекта)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Переместите неэкспортный метод "НовыйИсполняемый" из области "СлужебныйПрограммныйИнтерфейс" Why is this an issue?

CODE_SMELL Codesmell  MAJOR Major  :hourglass: 1min effort


#Область СлужебныйПрограммныйИнтерфейс

Функция НовыйИсполняемый(ОписаниеБазовогоОбъекта)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Метод "НовыйИсполняемый" не вызывается в теле модуля Why is this an issue?

CODE_SMELL Codesmell  MAJOR Major  :hourglass: 1min effort


#Область СлужебныйПрограммныйИнтерфейс

Функция НовыйИсполняемый(ОписаниеБазовогоОбъекта)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Функция не содержит "Возврат" Why is this an issue?

BUG Bug  MAJOR Major  :hourglass: 10min effort


КонецФункции

Функция РезультатТесирования(ДанныеИсполняемого) Экспорт
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Возможная опечатка в "Тесирования" Why is this an issue?

CODE_SMELL Codesmell  INFO Info  :hourglass: 1min effort


КонецФункции

Функция РезультатТесирования(ДанныеИсполняемого) Экспорт
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Функция не содержит "Возврат" Why is this an issue?

BUG Bug  MAJOR Major  :hourglass: 10min effort

//
// Возвращаемое значение:
// Массив из см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов - Результат прогона наборов тестов, структура набора см. ЮТФабрикаСлужебный.ОписаниеИсполняемогоНабораТестов
Функция ВыполнитьГруппуНаборовТестов(Знач Наборы, Знач ТестовыйМодуль) Экспорт
Функция ВыполнитьГруппуНаборовТестов(Знач ИдентификаторыТестовыхНаборов, Знач ИдентификаторТестовогоМодуля) Экспорт
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Необходимо добавить описание всех параметров метода Why is this an issue?

CODE_SMELL Codesmell  MAJOR Major  :hourglass: 5min effort

@alkoleft alkoleft merged commit d6b41b7 into develop May 27, 2024
9 of 18 checks passed
@alkoleft alkoleft deleted the feature/337 branch May 27, 2024 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant