mirror of
https://github.com/bia-technologies/yaxunit.git
synced 2024-12-03 08:45:31 +02:00
Расширение для настройки отдельного контекста для тестового набора
This commit is contained in:
parent
1b4841a6c5
commit
315d7d2e6c
@ -8,9 +8,9 @@ tags: [Начало, Контекст]
|
|||||||
|
|
||||||
Он позволяет:
|
Он позволяет:
|
||||||
|
|
||||||
1. хранить промежуточные данные и обеспечивать работу механизма текучих выражений
|
1. Хранить промежуточные данные и обеспечивать работу механизма текучих выражений
|
||||||
2. передавать между тестами необходимые данные
|
2. Передавать между тестами необходимые данные
|
||||||
3. удалять тестовые данные (пока только временные файлы)
|
3. Удалять тестовые данные
|
||||||
|
|
||||||
И имеет несколько ограничений:
|
И имеет несколько ограничений:
|
||||||
|
|
||||||
@ -21,7 +21,9 @@ tags: [Начало, Контекст]
|
|||||||
|
|
||||||
Разработчику тестов будут интересны следующие контексты:
|
Разработчику тестов будут интересны следующие контексты:
|
||||||
|
|
||||||
* Контекст теста (`ЮТест.КонтекстТеста`) - живет в рамках одного теста, также доступен в обработчиках событий `ПередКаждымТестом` и `ПослеКаждогоТеста`
|
* Контекст теста (`ЮТест.КонтекстТеста`) - живет в рамках одного теста. Доступен в каждом тесте и в обработчиках событий
|
||||||
|
* `ПередКаждымТестом`
|
||||||
|
* `ПослеКаждогоТеста`
|
||||||
* Контекст тестового набора (`ЮТест.КонтекстТестовогоНабора`) - живет в рамках набора тестов. Доступен в каждом тесте набора и в обработчиках событий
|
* Контекст тестового набора (`ЮТест.КонтекстТестовогоНабора`) - живет в рамках набора тестов. Доступен в каждом тесте набора и в обработчиках событий
|
||||||
* `ПередТестовымНабором`
|
* `ПередТестовымНабором`
|
||||||
* `ПослеТестовогоНабора`
|
* `ПослеТестовогоНабора`
|
||||||
@ -34,3 +36,25 @@ tags: [Начало, Контекст]
|
|||||||
* `ПослеТестовогоНабора`
|
* `ПослеТестовогоНабора`
|
||||||
* `ПередКаждымТестом`
|
* `ПередКаждымТестом`
|
||||||
* `ПослеКаждогоТеста`
|
* `ПослеКаждогоТеста`
|
||||||
|
|
||||||
|
Для тестовых наборов есть возможность определить отдельный контекст, доступный в конкретном наборе. Для этого надо переопределить события тестового набора через настройки "ПередТестовымНабором" и "ПослеТестовогоНабора" соответственно. В текущей реализации такой отдельный контекст набора не заменяет общий, а дополняет его. Пример:
|
||||||
|
```bsl
|
||||||
|
Процедура ИсполняемыеСценарии() Экспорт
|
||||||
|
ЮТТесты
|
||||||
|
.ДобавитьТестовыйНабор("Набор1")
|
||||||
|
.ДобавитьТест("Тест1")
|
||||||
|
.ДобавитьТестовыйНабор("Набор2")
|
||||||
|
.НастройкаИсполнения("ПередТестовымНабором", "ПередТестовымНабором_Набор2")
|
||||||
|
.НастройкаИсполнения("ПослеТестовогоНабора", "ПослеТестовогоНабора_Набор2")
|
||||||
|
.ДобавитьТест("Тест2");
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ПередТестовымНабором() Экспорт
|
||||||
|
ЮТест.Контекст().УстановитьЗначение("...", ...); // Будет доступен в тестах каждого набора
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ПередТестовымНабором_Набор2() Экспорт
|
||||||
|
ЮТест.Контекст().УстановитьЗначение("...", ...); // Будет доступен только в тестах второго набора
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
```
|
||||||
|
@ -0,0 +1,69 @@
|
|||||||
|
//©///////////////////////////////////////////////////////////////////////////©//
|
||||||
|
//
|
||||||
|
// Copyright 2021-2023 BIA-Technologies Limited Liability Company
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
//
|
||||||
|
//©///////////////////////////////////////////////////////////////////////////©//
|
||||||
|
|
||||||
|
// @strict-types
|
||||||
|
|
||||||
|
#Область СлужебныйПрограммныйИнтерфейс
|
||||||
|
|
||||||
|
#Область ОбработчикиСобытий
|
||||||
|
|
||||||
|
// Обработчик события "ПередТестовымНабором"
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// ОписаниеСобытия - См. ЮТФабрика.ОписаниеСобытияИсполненияТестов
|
||||||
|
//
|
||||||
|
Процедура ПередТестовымНабором(ОписаниеСобытия) Экспорт
|
||||||
|
|
||||||
|
ВызватьОбработчик(ОписаниеСобытия, "ПередТестовымНабором");
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
// Обработчик события "ПослеТестовогоНабора"
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// ОписаниеСобытия - См. ЮТФабрика.ОписаниеСобытияИсполненияТестов
|
||||||
|
//
|
||||||
|
Процедура ПослеТестовогоНабора(ОписаниеСобытия) Экспорт
|
||||||
|
|
||||||
|
ВызватьОбработчик(ОписаниеСобытия, "ПослеТестовогоНабора");
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|
||||||
|
// Вызывает настроенный обработчик события
|
||||||
|
//
|
||||||
|
// Параметры:
|
||||||
|
// ОписаниеСобытия - См. ЮТФабрика.ОписаниеСобытияИсполненияТестов
|
||||||
|
// ИмяНастройки - Строка
|
||||||
|
//
|
||||||
|
Процедура ВызватьОбработчик(ОписаниеСобытия, ИмяНастройки)
|
||||||
|
|
||||||
|
ИмяМодуля = ОписаниеСобытия.Модуль.МетаданныеМодуля.Имя;
|
||||||
|
ИмяМетода = ЮТНастройкиВыполнения.ЗначениеНастройкиТеста(ИмяНастройки, "");
|
||||||
|
Если ЗначениеЗаполнено(ИмяМетода) Тогда
|
||||||
|
ЮТОбщий.ВыполнитьМетод(СтрШаблон("%1.%2", ИмяМодуля, ИмяМетода));
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="cafd6c6f-0bea-45d6-896a-17fd6d96cc8f">
|
||||||
|
<name>ЮТПереопределениеКонтекста</name>
|
||||||
|
<synonym>
|
||||||
|
<key>ru</key>
|
||||||
|
<value>Переопределение контекста</value>
|
||||||
|
</synonym>
|
||||||
|
<clientManagedApplication>true</clientManagedApplication>
|
||||||
|
<server>true</server>
|
||||||
|
<clientOrdinaryApplication>true</clientOrdinaryApplication>
|
||||||
|
</mdclass:CommonModule>
|
@ -64,6 +64,7 @@
|
|||||||
<commonModules>CommonModule.ЮТОтчетJSON</commonModules>
|
<commonModules>CommonModule.ЮТОтчетJSON</commonModules>
|
||||||
<commonModules>CommonModule.ЮТОтчетJUnit</commonModules>
|
<commonModules>CommonModule.ЮТОтчетJUnit</commonModules>
|
||||||
<commonModules>CommonModule.ЮТПараметрыЗапуска</commonModules>
|
<commonModules>CommonModule.ЮТПараметрыЗапуска</commonModules>
|
||||||
|
<commonModules>CommonModule.ЮТПереопределениеКонтекста</commonModules>
|
||||||
<commonModules>CommonModule.ЮТПовторногоИспользования</commonModules>
|
<commonModules>CommonModule.ЮТПовторногоИспользования</commonModules>
|
||||||
<commonModules>CommonModule.ЮТПредикаты</commonModules>
|
<commonModules>CommonModule.ЮТПредикаты</commonModules>
|
||||||
<commonModules>CommonModule.ЮТПредикатыКлиентСервер</commonModules>
|
<commonModules>CommonModule.ЮТПредикатыКлиентСервер</commonModules>
|
||||||
|
@ -11,5 +11,6 @@
|
|||||||
<content>CommonModule.ЮТЛогирование</content>
|
<content>CommonModule.ЮТЛогирование</content>
|
||||||
<content>CommonModule.ЮТТестовыеДанныеСлужебный</content>
|
<content>CommonModule.ЮТТестовыеДанныеСлужебный</content>
|
||||||
<content>CommonModule.ЮТУтверждения</content>
|
<content>CommonModule.ЮТУтверждения</content>
|
||||||
|
<content>CommonModule.ЮТПереопределениеКонтекста</content>
|
||||||
<parentSubsystem>Subsystem.ЮТФункциональность</parentSubsystem>
|
<parentSubsystem>Subsystem.ЮТФункциональность</parentSubsystem>
|
||||||
</mdclass:Subsystem>
|
</mdclass:Subsystem>
|
||||||
|
Loading…
Reference in New Issue
Block a user