Добавляет в скрипт функционал "Утверждений" (assertions). Возможны 2 стиля использования:
- Модуль "Утверждения" - утверждения в стиле фреймворка xUnitFor1C
- Свойство глобального контекста "Ожидаем" - fluent-API утверждений в стиле BDD
МояПеременная = ВычислитьЧтоТоТам();
// xUnit style
Утверждения.ПроверитьРавенство(1, МояПеременная, "Моя переменная должна быть строго равна 1");
// BDD style
Ожидаем.Что(МояПеременная).Равно(1);BDD стиль предоставляет fluent API для создания более читаемых утверждений.
Ожидаем.Что(ПроверяемоеЗначение).МетодПроверки(ПараметрыПроверки);Инвертирует результат следующей проверки.
Ожидаем.Что(Значение).Не_().Равно(0);
Ожидаем.Что(Строка).ЭтоНе().Заполнено();Проверяет, что значение равно Истина.
Ожидаем.Что(УсловиеВыполнено).ЭтоИстина();Проверяет, что значение равно Ложь.
Ожидаем.Что(ОшибкаВозникла).ЭтоЛожь();Проверяет равенство значений.
Ожидаем.Что(Результат).Равно(42);
Ожидаем.Что(Статус).Равно("Готов");Проверяет, что значение больше указанного.
Ожидаем.Что(Количество).Больше(0);Проверяет, что значение больше или равно указанному.
Ожидаем.Что(Возраст).БольшеИлиРавно(18);
Ожидаем.Что(Зарплата).Минимум(10000);Проверяет, что значение меньше указанного.
Ожидаем.Что(ВремяОтклика).Меньше(1000);Проверяет, что значение меньше или равно указанному.
Ожидаем.Что(Оценка).МеньшеИлиРавно(10);
Ожидаем.Что(Размер).Максимум(1024);Проверяет, что значение находится в указанном диапазоне.
Ожидаем.Что(Процент).Между(0, 100);Проверяет, что значение заполнено.
Ожидаем.Что(НомерЗаказа).Заполнено();Проверяет, что значение не равно Неопределено и не равно Null.
Ожидаем.Что(НайденныйЭлемент).Существует();Проверяет, что значение равно Неопределено.
Ожидаем.Что(НеинициализированнаяПеременная).ЭтоНеопределено();Проверяет, что значение равно Null.
Ожидаем.Что(ПустаяСсылка).ЭтоNull();Проверяет соответствие типа значения ожидаемому.
Ожидаем.Что(МойОбъект).ИмеетТип("Структура");
Ожидаем.Что(СписокЗначений).ИмеетТип(Тип("Массив"));Проверяет содержание элемента в коллекции или подстроки в строке.
// Для строк
Ожидаем.Что(ТекстОшибки).Содержит("не найден");
// Для массивов
Ожидаем.Что(СписокФайлов).Содержит("config.json");
// Для структур/соответствий - проверяет значения
Ожидаем.Что(Настройки).Содержит("Администратор");Проверяет длину строки или количество элементов в коллекции.
Ожидаем.Что(Пароль).ИмеетДлину(8);
Ожидаем.Что(МассивДанных).ИмеетДлину(5);Проверяет наличие метода у объекта.
Ожидаем.Что(МойОбъект).ИмеетМетод("ВыполнитьОбработку");Проверяет, что вызов метода вызывает исключение.
Ожидаем.Что(КалькуляторОбъект).Метод("Разделить", Новый Массив).ВыбрасываетИсключение("деление на ноль");Сравнивает таблицы значений.
Ожидаем.Что(ПолученнаяТаблица).РавнаТаблице(ОжидаемаяТаблица);Сравнивает только структуру таблиц (колонки и их типы).
Ожидаем.Что(НоваяТаблица).ИмеетРавнуюСтруктуруСТаблицей(ШаблонТаблицы);Проверяет наличие строки с указанными значениями в таблице.
СтрокаПоиска = Новый Структура("Код, Наименование", "001", "Товар1");
Ожидаем.Что(ТаблицаТоваров).СодержитСтрокуТаблицы(СтрокаПоиска);Игнорирует порядок строк при сравнении таблиц.
Ожидаем.Что(Таблица1).БезУчетаПорядкаСтрок().РавнаТаблице(Таблица2);Игнорирует порядок колонок при сравнении таблиц.
Ожидаем.Что(Таблица1).БезУчетаПорядкаКолонок().РавнаТаблице(Таблица2);Игнорирует имена колонок при сравнении таблиц.
Ожидаем.Что(Таблица1).БезУчетаИменКолонок().РавнаТаблице(Таблица2);Игнорирует порядок элементов при сравнении массивов.
Ожидаем.Что(Массив1).НеУчитыватьПорядокВМассиве().РавноМассиву(Массив2);Выполняет глубокое сравнение объектов (структур, массивов, таблиц).
Ожидаем.Что(СложнаяСтруктура).Идентично(ОжидаемаяСтруктура);Сравнивает массивы с детальной диагностикой различий.
Ожидаем.Что(ПолученныйМассив).РавноМассиву(ОжидаемыйМассив);Сравнивает структуры или соответствия с детальной диагностикой.
Ожидаем.Что(НастройкиСистемы).РавноСтруктуреИлиСоответствию(ОжидаемыеНастройки);BDD стиль поддерживает цепочки утверждений для комплексных проверок:
Ожидаем.Что(Пользователь)
.ИмеетТип("Структура")
.Содержит("Администратор")
.ИмеетДлину(3);
Ожидаем.Что(Таблица)
.БезУчетаПорядкаСтрок()
.БезУчетаПорядкаКолонок()
.РавнаТаблице(ЭталонТаблица);Проверяет, что условие истинно.
Утверждения.Проверить(Истина, "Условие должно быть истинным");Синоним для Проверить(). Проверяет, что значение равно Истина.
Утверждения.ПроверитьИстину(ПолучитьБулевоЗначение());Проверяет, что значение равно Ложь.
Утверждения.ПроверитьЛожь(ПользовательНеАвторизован);Проверяет равенство двух значений.
Утверждения.ПроверитьРавенство(42, ПолучитьЧисло());
Утверждения.ПроверитьРавенство("Привет", ПолучитьСтроку());Проверяет неравенство двух значений.
Утверждения.ПроверитьНеРавенство("", ИмяПользователя);Проверяет, что первое значение больше второго.
Утверждения.ПроверитьБольше(100, ПолученнаяСумма);Проверяет, что первое значение больше или равно второму.
Утверждения.ПроверитьБольшеИлиРавно(0, КоличествоЭлементов);Проверяет, что первое значение меньше второго.
Утверждения.ПроверитьМеньше(ВремяВыполнения, МаксимальноеВремя);Проверяет, что первое значение меньше или равно второму.
Утверждения.ПроверитьМеньшеИлиРавно(РазмерФайла, МаксимальныйРазмер);Проверяет, что значение заполнено (с помощью ЗначениеЗаполнено()).
Утверждения.ПроверитьЗаполненность(НомерДокумента);
Утверждения.ПроверитьЗаполненность(ДатаСоздания);Проверяет, что значение не заполнено.
Утверждения.ПроверитьНеЗаполненность(ДатаУдаления);Проверяет соответствие типа значения ожидаемому типу.
Утверждения.ПроверитьТип(ПолученныйОбъект, "Структура");
Утверждения.ПроверитьТип(ПолученныйОбъект, Тип("Массив"));Проверяет, что дата входит в указанный период.
Период = Новый Структура("ДатаНачала, ДатаОкончания", НачалоДня(ТекущаяДата()), КонецДня(ТекущаяДата()));
Утверждения.ПроверитьДату(ДатаОперации, Период);Проверяет равенство дат с точностью до 2 секунд.
Утверждения.ПроверитьРавенствоДатСТочностью2Секунды(ВремяВыполнения, ОжидаемоеВремя);Проверяет, что строка содержит только цифры.
Утверждения.ПроверитьЧтоВСтрокеСодержатсяТолькоЦифры(Телефон);Проверяет, что строка содержит указанную подстроку.
Утверждения.ПроверитьВхождение(ОтветСервера, "success");Проверяет, что выполнение кода вызывает ошибку с указанным текстом.
Утверждения.ПроверитьКодСОшибкой("ВызватьИсключение ""Тестовая ошибка""", "Тестовая ошибка");Проверяет наличие метода у объекта.
Утверждения.ПроверитьМетодСуществует(МойОбъект, "ВыполнитьОбработку");