diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml
deleted file mode 100644
index f0ab45f6..00000000
--- a/.github/workflows/sonar.yml
+++ /dev/null
@@ -1,51 +0,0 @@
-name: Контроль качества
-
-on:
- push:
- pull_request:
- workflow_dispatch:
- workflow_call:
-
-jobs:
- build:
- runs-on: ubuntu-latest
-
- steps:
- - name: Актуализация
- uses: actions/checkout@v4
- with:
- fetch-depth: 0
-
- - name: Извлечение версии конфигурации
- shell: bash
- run: echo "version=`cat ./src/cf/Configuration.xml | grep -Po '(?<=)(.*)(?=)' | gawk -F'.' '{print $1"." $2"." $3}'`" >> $GITHUB_OUTPUT
- id: extract_version
-
- - name: Вычисление имени ветки
- uses: nelonoel/branch-name@v1.0.1
-
- - name: Настройка sonar-scanner
- uses: warchant/setup-sonar-scanner@v8
-
- # Анализ проекта в SonarQube (ветка)
- - name: Анализ в SonarQube (branch)
- if: github.event_name == 'push' || github.event_name == 'workflow_dispatch'
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
- run: sonar-scanner
- -Dsonar.host.url=https://sonar.openbsl.ru
- -Dsonar.branch.name=${{ env.BRANCH_NAME }}
- -Dsonar.projectVersion=${{ steps.extract_version.outputs.version }}
- # Анализ проекта в SonarQube (пулл-реквест)
- - name: Анализ в SonarQube (pull-request)
- if: github.event_name == 'pull_request'
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
- run: sonar-scanner
- -Dsonar.host.url=https://sonar.openbsl.ru
- -Dsonar.pullrequest.key=${{ github.event.pull_request.number }}
- -Dsonar.pullrequest.branch=${{ github.event.pull_request.head.ref }}
- -Dsonar.pullrequest.base=${{ github.event.pull_request.base.ref }}
- -Dsonar.scm.revision=${{ github.event.pull_request.head.sha }}
diff --git "a/features/\320\237\320\276\320\264\321\201\320\270\321\201\321\202\320\265\320\274\320\260 \320\277\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\321\205 \320\267\320\275\320\260\321\207\320\265\320\275\320\270\320\271.feature" "b/features/\320\237\320\276\320\264\321\201\320\270\321\201\321\202\320\265\320\274\320\260 \320\277\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\321\205 \320\267\320\275\320\260\321\207\320\265\320\275\320\270\320\271.feature"
new file mode 100644
index 00000000..6fb86f6d
--- /dev/null
+++ "b/features/\320\237\320\276\320\264\321\201\320\270\321\201\321\202\320\265\320\274\320\260 \320\277\321\200\320\265\320\264\320\276\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\275\321\213\321\205 \320\267\320\275\320\260\321\207\320\265\320\275\320\270\320\271.feature"
@@ -0,0 +1,28 @@
+#language: ru
+
+@tree
+
+Функционал: подсистема предопределенных значений
+
+Контекст:
+ Дано Я запускаю сценарий открытия TestClient или подключаю уже существующий
+
+Сценарий: проверка создания предопределенных элементов плана видов характеристик
+* Заполнение предопределенных из кода
+ Дано Я открываю основную форму списка плана видов характеристик 'пбп_ПредопределенныеЗначения'
+ Тогда открылось окно 'Предопределенные значения'
+ И я нажимаю на кнопку с именем 'ФормаЗаполнитьПредопределенные'
+* Проверка наличия предопределенного элемента
+ И в таблице "Список" я перехожу на один уровень вниз
+ И в таблице "Список" я перехожу к строке:
+ | 'Идентификатор настройки' | 'Код' | 'Наименование' | 'Пароль' |
+ | 'КолДнейХраненияИсторииИнтеграции' | '000000004' | 'Количество дней хранения истории интеграции' | 'Нет' |
+ И в таблице "Список" я активизирую поле с именем "Наименование"
+ И в таблице "Список" я выбираю текущую строку
+ Тогда открылось окно 'Количество дней хранения истории интеграции (Предопределенные значения)'
+* Дозаполнение предопределенного элемента
+ И в поле с именем 'Значение' я ввожу текст '28'
+ И я нажимаю на кнопку с именем 'ФормаЗаписатьИЗакрыть'
+ И я жду закрытия окна 'Количество дней хранения истории интеграции (Предопределенные значения) *' в течение 20 секунд
+ Тогда открылось окно 'Предопределенные значения'
+ И Я закрываю окно 'Предопределенные значения'
\ No newline at end of file
diff --git "a/features/\320\237\320\276\320\264\321\201\320\270\321\201\321\202\320\265\320\274\320\260 \321\203\320\277\321\200\320\260\320\262\320\273\320\265\320\275\320\270\321\217 \320\270\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217\320\274\320\270.feature" "b/features/\320\237\320\276\320\264\321\201\320\270\321\201\321\202\320\265\320\274\320\260 \321\203\320\277\321\200\320\260\320\262\320\273\320\265\320\275\320\270\321\217 \320\270\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217\320\274\320\270.feature"
new file mode 100644
index 00000000..626a618b
--- /dev/null
+++ "b/features/\320\237\320\276\320\264\321\201\320\270\321\201\321\202\320\265\320\274\320\260 \321\203\320\277\321\200\320\260\320\262\320\273\320\265\320\275\320\270\321\217 \320\270\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\321\217\320\274\320\270.feature"
@@ -0,0 +1,75 @@
+#language: ru
+
+@tree
+
+Функционал: подсистема управления интеграциями
+
+Контекст:
+ Дано Я запускаю сценарий открытия TestClient или подключаю уже существующий
+
+Сценарий: проверка создания предопределенных элементов подсистемы управления интеграциями
+* Заполнение предопределенных из кода
+ И В командном интерфейсе я выбираю 'Управление интеграциями' 'Интегрируемые системы'
+ Тогда открылось окно 'Интегрируемые системы'
+ И я нажимаю на кнопку с именем 'ФормаЗаполнитьПредопределенные'
+ И В командном интерфейсе я выбираю 'Управление интеграциями' 'Интеграционные потоки'
+ Тогда открылось окно 'Интеграционные потоки'
+ И я нажимаю на кнопку с именем 'ФормаЗаполнитьПредопределенные'
+ И В командном интерфейсе я выбираю 'Управление интеграциями' 'Настройки интеграции'
+ Тогда открылось окно 'Настройки интеграции'
+ И я нажимаю на кнопку с именем 'ФормаЗаполнитьПредопределенные'
+* Дозаполнение настройки интеграции
+ И в таблице "Список" я перехожу к строке:
+ | 'Код' | 'Наименование' |
+ | '000000001' | 'Интеграция с системой N' |
+ И в таблице "Список" я выбираю текущую строку
+ Тогда открылось окно 'Интеграция с системой N (Настройка интеграции)'
+ И я нажимаю кнопку выбора у поля с именем "ТипИнтеграции"
+ Тогда открылось окно 'Типы интеграций'
+ И в таблице "Список" я перехожу к строке:
+ | 'Код' | 'Наименование' |
+ | '000000001' | 'Файловые обмены' |
+ И в таблице "Список" я перехожу на один уровень вниз
+ И в таблице "Список" я перехожу на один уровень вниз
+ И в таблице "Список" я перехожу к строке:
+ | 'Код' | 'Наименование' |
+ | '000000017' | 'SFTP' |
+ И в таблице "Список" я выбираю текущую строку
+ И я нажимаю кнопку выбора у поля с именем "ИнтегрируемаяСистема"
+ Тогда открылось окно 'Интегрируемые системы'
+ И в таблице "Список" я перехожу к строке:
+ | 'Код' | 'Наименование' |
+ | '000000001' | 'Система N' |
+ И в таблице "Список" я выбираю текущую строку
+ И в поле с именем 'СтрокаПодключения' я ввожу текст '127.0.0.1'
+ И в таблице "СписокНастроек" я нажимаю на кнопку с именем 'СписокНастроекДобавитьОбщиеНастройки'
+ Тогда открылось окно 'Интеграция с системой N (Настройка интеграции) *'
+ И я нажимаю на кнопку с именем 'ФормаЗаписатьИЗакрыть'
+ И я жду закрытия окна 'Интеграция с системой N (Настройка интеграции) *' в течение 20 секунд
+* Проверка существования предопределенного элемента интегрируемых систем
+ И В командном интерфейсе я выбираю 'Управление интеграциями' 'Интегрируемые системы'
+ Тогда открылось окно 'Интегрируемые системы'
+ И в таблице "Список" я перехожу к строке:
+ | 'Идентификатор настройки' | 'Код' | 'Наименование' |
+ | 'СистемаN' | '000000001' | 'Система N' |
+ И в таблице "Список" я выбираю текущую строку
+ Тогда открылось окно 'Система N (Интегрируемая система)'
+ И Я закрываю окно 'Система N (Интегрируемая система)'
+* Дозаполнение интеграционного потока
+ И В командном интерфейсе я выбираю 'Управление интеграциями' 'Интеграционные потоки'
+ Тогда открылось окно 'Интеграционные потоки'
+ И в таблице "Список" я перехожу к строке:
+ | 'Код' | 'Наименование' |
+ | '000000001' | 'Интеграционный поток системы N' |
+ И в таблице "Список" я выбираю текущую строку
+ Тогда открылось окно 'Интеграционный поток системы N (Интеграционный поток)'
+ И я нажимаю кнопку выбора у поля с именем "НастройкаИнтеграции"
+ Тогда открылось окно 'Настройки интеграции'
+ И в таблице "Список" я перехожу к строке:
+ | 'Код' | 'Наименование' |
+ | '000000001' | 'Интеграция с системой N' |
+ И в таблице "Список" я выбираю текущую строку
+ Тогда открылось окно 'Интеграционный поток системы N (Интеграционный поток) *'
+ И в поле с именем 'ТочкаВхода' я ввожу текст '/test'
+ И я нажимаю на кнопку с именем 'ФормаЗаписатьИЗакрыть'
+ И я жду закрытия окна 'Интеграционный поток системы N (Интеграционный поток) *' в течение 20 секунд
\ No newline at end of file
diff --git a/jobConfiguration.json b/jobConfiguration.json
index e6280707..1a426568 100644
--- a/jobConfiguration.json
+++ b/jobConfiguration.json
@@ -2,14 +2,20 @@
"$schema": "https://raw.githubusercontent.com/firstBitMarksistskaya/jenkins-lib/develop/resources/schema.json",
"stages": {
"initSteps": true,
+ "edtValidate": true,
"syntaxCheck": true,
"smoke": true,
"yaxunit": true,
"telegram": true,
- "bdd": true
+ "bdd": true,
+ "sonarqube": true
},
+ "edtVersion": "2024.1.3:x86_64",
"sourceFormat": "designer",
"srcDir": "src/cf",
+ "resultsTransform": {
+ "transformer": "edt-ripper"
+ },
"initInfobase": {
"initMethod": "fromSource",
"extensions": [
@@ -25,10 +31,18 @@
"publishToAllureReport": false,
"publishToJUnitReport": true
},
+ "bdd": {
+ "coverage": true
+ },
"yaxunit": {
+ "coverage": true,
"publishToAllureReport": false,
"publishToJUnitReport": true
},
+ "sonarqube": {
+ "sonarQubeInstallation": "Sonar.openbsl",
+ "waitForQualityGate": true
+ },
"notifications": {
"telegram": {
"onAlways":true
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\276\320\275\320\275\321\213\320\265\320\237\320\276\321\202\320\276\320\272\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\276\320\275\320\275\321\213\320\265\320\237\320\276\321\202\320\276\320\272\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml"
index 7685265b..fbfb935b 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\276\320\275\320\275\321\213\320\265\320\237\320\276\321\202\320\276\320\272\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\276\320\275\320\275\321\213\320\265\320\237\320\276\321\202\320\276\320\272\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml"
@@ -128,17 +128,6 @@
Normal
b75fecce-942b-4aed-abc9-e6a02e460fb3
-
-
-
- НастройкаИнтеграции
- Items
- None
- 0001-01-01T00:00:00
- 0001-01-01T00:00:00
-
-
-
Normal
911b6018-f537-43e8-a417-da56b22f9aec
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\321\201\321\202\320\276\321\200\320\270\321\217\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\321\201\321\202\320\276\321\200\320\270\321\217\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml"
index 390a8384..385d51c1 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\321\201\321\202\320\276\321\200\320\270\321\217\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\230\321\201\321\202\320\276\321\200\320\270\321\217\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml"
@@ -181,7 +181,7 @@
- ДатаОбмена
+ ДатаИнтеграцииВМиллисекундах
Desc
Normal
diff --git "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml" "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml"
index b7cc2642..2ff92f59 100644
--- "a/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml"
+++ "b/src/cf/Catalogs/\320\277\320\261\320\277_\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\230\320\275\321\202\320\265\320\263\321\200\320\260\321\206\320\270\320\270/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Ext/Form.xml"
@@ -128,17 +128,6 @@
Normal
b75fecce-942b-4aed-abc9-e6a02e460fb3
-
-
-
- ИнтегрируемаяСистема
- Items
- None
- 0001-01-01T00:00:00
- 0001-01-01T00:00:00
-
-
-
Normal
911b6018-f537-43e8-a417-da56b22f9aec
diff --git a/tools/VBParams.json b/tools/VBParams.json
index 6d796ce9..1c41cc88 100644
--- a/tools/VBParams.json
+++ b/tools/VBParams.json
@@ -37,9 +37,9 @@
"ЗапускатьКлиентТестированияСМаксимизированнымОкном": true,
"ТаймаутЗапуска1С": 25,
"ДиапазонПортовTestclient": "",
- "ЗапускатьТестКлиентВРежимеОтладки": false,
- "КлючиОтладки": "",
- "АдресОтладчика": "",
+ "ЗапускатьТестКлиентВРежимеОтладки": true,
+ "КлючиОтладки": "-http",
+ "АдресОтладчика": "http://127.0.0.1:1550",
"ДанныеКлиентовТестирования": []
},
"ДелатьОтчетВФорматеАллюр": true,
diff --git a/tools/vrunner.json b/tools/vrunner.json
index 99a7ac85..aaa7714c 100644
--- a/tools/vrunner.json
+++ b/tools/vrunner.json
@@ -5,11 +5,15 @@
"--db-user": "",
"--db-pwd": "",
"--workspace": ".",
- "--ordinaryapp": "0"
+ "--ordinaryapp": "0",
+ "--additional": "/debug -http -attach /debuggerURL http://localhost:1550"
},
"vanessa": {
"--vanessasettings": "./tools/VBParams.json",
"--pathvanessa": "./oscript_modules/vanessa-automation-single/vanessa-automation-single.epf",
"--additional": "/DisplayAllFunctions /L ru"
+ },
+ "xunit": {
+ "--testclient-additional": "/debug -http -attach /debuggerURL http://localhost:1550"
}
-}
\ No newline at end of file
+}
diff --git a/tools/yaxunit.json b/tools/yaxunit.json
index b5910455..cf7d2029 100644
--- a/tools/yaxunit.json
+++ b/tools/yaxunit.json
@@ -23,4 +23,4 @@
"level": "debug"
},
"exitCode": "./build/out/yaxunit/result.txt"
-}
\ No newline at end of file
+}