1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2025-01-05 12:50:36 +02:00
Тест на удаление данных созданных в ПередВсемиТестами
Правка описания по этому поводу
This commit is contained in:
alkoleft 2023-05-16 00:07:36 +03:00
parent 95e0332769
commit 82ff5bc082
3 changed files with 12 additions and 8 deletions

View File

@ -32,7 +32,7 @@ tags: [Getting started, Test data]
Такие данные необходимо удалять самостоятельно при необходимости.
:::
## Механизма удаления тестовых данных
## Механизм удаления тестовых данных
Для включения нужно при регистрации теста вызвать метод `УдалениеТестовыхДанных()`
@ -58,7 +58,11 @@ tags: [Getting started, Test data]
* Удалять данные созданные с клиента
* Удалять данные созданные вне теста (в обработчиках событий)
:::tip
:::caution Удаление и только
Механизм только удаляет созданные объекты, изменения не откатываются
:::
:::tip Разное время жизни данных
Механизм понимает в рамках какого контекста исполнения (тест, набор, модуль) были созданы данные и удаляет их по выходу из него.
:::
@ -66,7 +70,7 @@ tags: [Getting started, Test data]
```bsl title=УдалениеТестовыхДанныхВремяЖизни.bsl
Процедура ПередВсемиТестами() Экспорт
ДанныеМодуля = ЮТест.Данные().СоздатьЭлемент(); // Не будет удалена
ДанныеМодуля = ЮТест.Данные().СоздатьЭлемент();
КонецПроцедуры
Процедура ПередТестовымНабором() Экспорт
@ -84,13 +88,12 @@ tags: [Getting started, Test data]
Для переменных получим разное время жизни
* `ДанныеМодуля` - Не будет удалена, проблема будет решена в ближайшем будущем.
* `ДанныеМодуля` - Живет, пока исполняются тесты модуля одного контекста (Сервер, Клиент).
* `ДанныеНабора` - Живет, пока исполняются тесты набора.
* `ДанныеТеста` и `Ссылка`- Живут, пока исполняется тест.
* `ДанныеТеста` и `Ссылка` - Живут, пока исполняется тест.
:::caution Механизм имеет ряд ограничений и не работает для следующих кейсов:
* Данные создан не через API
* Данные созданы в событии "ПередВсемиТестами" (работает для "ПередТестовымНабором")
* Данные созданы в клиентском модуле через вызов своего серверного модуля, даже если он использует API тестового движка
:::

View File

@ -166,10 +166,10 @@
// Устанавливает настройку удаления созданных тестовых данных
// В отличии от использования транзакции:
//
// * Умеет работь с данными созданными на клиенте
// * Умеет работать с данными созданными на клиенте
// * Только удаляет созданные данные и не откатывает изменения объектов
// * Работает с данными созданными через API работы с тестовыми данными
// * Удаляет данные созданные вне теста (в обработчиках событий, например, ПередТестовымНабором)
// * Удаляет данные созданные вне теста (в обработчиках событий, например, ПередВсемиТестами и ПередТестовымНабором)
//
// Параметры:
// УдалятьСозданныеДанные - Булево

View File

@ -107,6 +107,7 @@
Ссылки = Новый Структура("Набор, Тест");
ЮТест.Контекст().УстановитьЗначение("Ссылки", Ссылки);
СоздатьСсылку("Модуль", "Модуль"); // Если данные созданные в этом событии не удаляются то прогон в другом контексте долже упасть (на сервере)
КонецПроцедуры