mirror of
https://github.com/bia-technologies/yaxunit.git
synced 2025-03-20 20:55:11 +02:00
3.5 KiB
3.5 KiB
tags | ||
---|---|---|
|
Контекст
Механизм контекстов
Одним из важнейших блоков работы тестового движка является механизм контекстов.
Он позволяет:
- Хранить промежуточные данные и обеспечивать работу механизма текучих выражений.
- Передавать между тестами необходимые данные.
- Удалять тестовые данные.
И имеет несколько ограничений:
- Не синхронизируется между клиентом и сервером.
- Тестовые контексты имеют ограниченное время жизни. Например, контекст теста "живет" только в рамках теста и событиях "ПередКаждымТестом", "ПослеКаждогоТеста".
Для различных механизмов движка существуют различные контексты, такие как контекст утверждений, контекст теста и тд.
Контексты тестового модуля
Разработчику тестов будут интересны следующие контексты:
- Контекст теста (
ЮТест.КонтекстТеста
) - живет в рамках одного теста. Доступен в каждом тесте и в обработчиках событийПередКаждымТестом
ПослеКаждогоТеста
- Контекст тестового набора (
ЮТест.КонтекстТестовогоНабора
) - живет в рамках набора тестов. Доступен в каждом тесте набора и в обработчиках событийПередТестовымНабором
ПослеТестовогоНабора
ПередКаждымТестом
ПослеКаждогоТеста
- Контекст тестового модуля (
ЮТест.КонтекстМодуля
) - живет в рамках тестового модуля. Доступен в каждом тесте модуля и в обработчиках событийПередВсемиТестами
ПослеВсехТестов
ПередТестовымНабором
ПослеТестовогоНабора
ПередКаждымТестом
ПослеКаждогоТеста
На каждом уровне исполнения есть возможность переопределить обработчики событий соответствующего контекста исполнения при помощи методов Перед()
и После()
. Настроенный обработчик события будет вызван вместо основного. Пример:
ЮТТесты
.ДобавитьТестовыйНабор("Набор1") // Будет вызван основной обработчик ПередТестовымНабором()
.ДобавитьТест("Тест1")
.ДобавитьТестовыйНабор("Набор2").Перед("Перед_Набор2") // Будет вызван обработчик Перед_Набор2()
.ДобавитьТест("Тест2");