mirror of
				https://github.com/firstBitSportivnaya/PSSL.git
				synced 2025-10-30 23:47:51 +02:00 
			
		
		
		
	Доработка сборки, добавление сценарных автотестов (#171)
* Доработаны настройки сборки, добавлены автотесты, удалены некорректные настройки форм
This commit is contained in:
		
							
								
								
									
										51
									
								
								.github/workflows/sonar.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										51
									
								
								.github/workflows/sonar.yml
									
									
									
									
										vendored
									
									
								
							| @@ -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 '(?<=<Version>)(.*)(?=</Version>)' | 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 }} | ||||
							
								
								
									
										28
									
								
								features/Подсистема предопределенных значений.feature
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								features/Подсистема предопределенных значений.feature
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | ||||
| #language: ru | ||||
|  | ||||
| @tree | ||||
|  | ||||
| Функционал: подсистема предопределенных значений | ||||
|  | ||||
| Контекст: | ||||
| 	Дано Я запускаю сценарий открытия TestClient или подключаю уже существующий | ||||
|  | ||||
| Сценарий: проверка создания предопределенных элементов плана видов характеристик  | ||||
| * Заполнение предопределенных из кода | ||||
| 	Дано Я открываю основную форму списка плана видов характеристик 'пбп_ПредопределенныеЗначения' | ||||
| 	Тогда открылось окно 'Предопределенные значения' | ||||
| 	И я нажимаю на кнопку с именем 'ФормаЗаполнитьПредопределенные' | ||||
| * Проверка наличия предопределенного элемента | ||||
| 	И в таблице  "Список" я перехожу на один уровень вниз | ||||
| 	И в таблице "Список" я перехожу к строке: | ||||
| 		| 'Идентификатор настройки'          | 'Код'       | 'Наименование'                                | 'Пароль' | | ||||
| 		| 'КолДнейХраненияИсторииИнтеграции' | '000000004' | 'Количество дней хранения истории интеграции' | 'Нет'    | | ||||
| 	И в таблице "Список" я активизирую поле с именем "Наименование" | ||||
| 	И в таблице "Список" я выбираю текущую строку | ||||
| 	Тогда открылось окно 'Количество дней хранения истории интеграции (Предопределенные значения)' | ||||
| * Дозаполнение предопределенного элемента | ||||
| 	И в поле с именем 'Значение' я ввожу текст '28' | ||||
| 	И я нажимаю на кнопку с именем 'ФормаЗаписатьИЗакрыть' | ||||
| 	И я жду закрытия окна 'Количество дней хранения истории интеграции (Предопределенные значения) *' в течение 20 секунд | ||||
| 	Тогда открылось окно 'Предопределенные значения' | ||||
| 	И Я закрываю окно 'Предопределенные значения' | ||||
							
								
								
									
										75
									
								
								features/Подсистема управления интеграциями.feature
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								features/Подсистема управления интеграциями.feature
									
									
									
									
									
										Normal file
									
								
							| @@ -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 секунд | ||||
| @@ -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  | ||||
|   | ||||
| @@ -128,17 +128,6 @@ | ||||
| 						<dcsset:viewMode>Normal</dcsset:viewMode> | ||||
| 						<dcsset:userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</dcsset:userSettingID> | ||||
| 					</dcsset:conditionalAppearance> | ||||
| 					<dcsset:item xsi:type="dcsset:StructureItemGroup"> | ||||
| 						<dcsset:groupItems> | ||||
| 							<dcsset:item xsi:type="dcsset:GroupItemField"> | ||||
| 								<dcsset:field>НастройкаИнтеграции</dcsset:field> | ||||
| 								<dcsset:groupType>Items</dcsset:groupType> | ||||
| 								<dcsset:periodAdditionType>None</dcsset:periodAdditionType> | ||||
| 								<dcsset:periodAdditionBegin xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionBegin> | ||||
| 								<dcsset:periodAdditionEnd xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionEnd> | ||||
| 							</dcsset:item> | ||||
| 						</dcsset:groupItems> | ||||
| 					</dcsset:item> | ||||
| 					<dcsset:itemsViewMode>Normal</dcsset:itemsViewMode> | ||||
| 					<dcsset:itemsUserSettingID>911b6018-f537-43e8-a417-da56b22f9aec</dcsset:itemsUserSettingID> | ||||
| 				</ListSettings> | ||||
|   | ||||
| @@ -181,7 +181,7 @@ | ||||
| 					</dcsset:filter> | ||||
| 					<dcsset:order> | ||||
| 						<dcsset:item xsi:type="dcsset:OrderItemField"> | ||||
| 							<dcsset:field>ДатаОбмена</dcsset:field> | ||||
| 							<dcsset:field>ДатаИнтеграцииВМиллисекундах</dcsset:field> | ||||
| 							<dcsset:orderType>Desc</dcsset:orderType> | ||||
| 						</dcsset:item> | ||||
| 						<dcsset:viewMode>Normal</dcsset:viewMode> | ||||
|   | ||||
| @@ -128,17 +128,6 @@ | ||||
| 						<dcsset:viewMode>Normal</dcsset:viewMode> | ||||
| 						<dcsset:userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</dcsset:userSettingID> | ||||
| 					</dcsset:conditionalAppearance> | ||||
| 					<dcsset:item xsi:type="dcsset:StructureItemGroup"> | ||||
| 						<dcsset:groupItems> | ||||
| 							<dcsset:item xsi:type="dcsset:GroupItemField"> | ||||
| 								<dcsset:field>ИнтегрируемаяСистема</dcsset:field> | ||||
| 								<dcsset:groupType>Items</dcsset:groupType> | ||||
| 								<dcsset:periodAdditionType>None</dcsset:periodAdditionType> | ||||
| 								<dcsset:periodAdditionBegin xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionBegin> | ||||
| 								<dcsset:periodAdditionEnd xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionEnd> | ||||
| 							</dcsset:item> | ||||
| 						</dcsset:groupItems> | ||||
| 					</dcsset:item> | ||||
| 					<dcsset:itemsViewMode>Normal</dcsset:itemsViewMode> | ||||
| 					<dcsset:itemsUserSettingID>911b6018-f537-43e8-a417-da56b22f9aec</dcsset:itemsUserSettingID> | ||||
| 				</ListSettings> | ||||
|   | ||||
| @@ -37,9 +37,9 @@ | ||||
| 		"ЗапускатьКлиентТестированияСМаксимизированнымОкном": true, | ||||
| 		"ТаймаутЗапуска1С": 25, | ||||
| 		"ДиапазонПортовTestclient": "", | ||||
| 		"ЗапускатьТестКлиентВРежимеОтладки": false, | ||||
| 		"КлючиОтладки": "", | ||||
| 		"АдресОтладчика": "", | ||||
| 		"ЗапускатьТестКлиентВРежимеОтладки": true, | ||||
| 		"КлючиОтладки": "-http", | ||||
| 		"АдресОтладчика": "http://127.0.0.1:1550", | ||||
| 		"ДанныеКлиентовТестирования": [] | ||||
| 	}, | ||||
| 	"ДелатьОтчетВФорматеАллюр": true, | ||||
|   | ||||
| @@ -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" | ||||
|     } | ||||
| } | ||||
| } | ||||
|   | ||||
| @@ -23,4 +23,4 @@ | ||||
|     "level": "debug" | ||||
|   }, | ||||
|   "exitCode": "./build/out/yaxunit/result.txt" | ||||
| } | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user