Skip to content

Latest commit

 

History

History
159 lines (134 loc) · 14.7 KB

Базовые-утверждения.MD

File metadata and controls

159 lines (134 loc) · 14.7 KB

Плагин базовых утверждений

Обращение к плагину (пример)

Из кода шагов (BDD), запускаемых через bddRunner

Процедура МойШаг(...) Экспорт
  Утверждения = Ванесса.Плагин("БазовыеУтверждения");
  Утверждения.Проверить(успешно, "флаг успешно");
  Утверждения.ПроверитьРавенство(1, Таб.Количество(), "Таб.Количество()");
КонецПроцедуры

Из кода тестов (TDD), запускаемых через xddTestRunner

Перем КонтекстЯдра;
Перем Ожидаем;

Процедура Инициализация(КонтекстЯдраПараметр) Экспорт
  КонтекстЯдра = КонтекстЯдраПараметр;
  Утверждения = КонтекстЯдра.Плагин("БазовыеУтверждения");
КонецПроцедуры

Процедура ТестДолжен() Экспорт
  Утверждения.Проверить(успешно, "флаг успешно");
  Утверждения.ПроверитьРавенство(1, Таб.Количество(), "Таб.Количество()");
КонецПроцедуры

Использование

  1. Каждый из методов-утверждений работает по простой схеме:
  • если проверяемое условие выполняется, тогда метод просто завершает свою работу
  • а вот если условие не выполняется, тогда выбрасывается исключение со специальным текстом ошибки, который можно дополнительно детализировать с помощью доп.параметра ДопСообщениеОшибки
  1. В каждом из методов-утверждений есть специальный последний параметр по умолчанию ДопСообщениеОшибки = ""

В этом параметре можно передать специальный текст для большей детализации ошибочного сообщения и возможного поиска строки, вызвавшей ошибку, в своем коде.

Публичный интерфейс

  • Проверить ( Значение, ДопСообщениеОшибки = "" ) - проверить значение на равенство с Истина

  • ПроверитьИстину ( Значение, ДопСообщениеОшибки = "" ) - проверить значение на равенство с Истина

  • ПроверитьЛожь ( Значение, ДопСообщениеОшибки = "" ) - проверить значение на равенство с Ложь

  • ПроверитьРавенство ( _1, _2, ДопСообщениеОшибки = "" ) - проверить равенство 2-х значений

  • ПроверитьНеРавенство ( _1, _2, ДопСообщениеОшибки = "" ) - проверить неравенство 2-х значений

  • ПроверитьДату ( _Дата, _Период, ДопСообщениеОшибки = "" ) - проверить дату на вхождение в стандартный период

  • ПроверитьРавенствоДатСТочностью2Секунды( _Дата, _Дата2, ДопСообщениеОшибки = "" ) - проверить дату на вхождение в стандартный период с точностью до 2-х секунд

  • ПроверитьБольше ( _Больше, _Меньше, ДопСообщениеОшибки = "" ) - проверить, что первое значение больше, чем второе значение

  • ПроверитьБольшеИлиРавно ( _Больше, _Меньше, ДопСообщениеОшибки = "" ) - проверить, что первое значение больше или равно, чем второе значение

  • ПроверитьМеньше ( _Меньше, _Больше, ДопСообщениеОшибки = "" ) - проверить, что первое значение меньше, чем второе значение

  • ПроверитьМеньшеИлиРавно ( _Меньше, _Больше, ДопСообщениеОшибки = "" ) - проверить, что первое значение меньше или равно, чем второе значение

  • ПроверитьЗаполненность ( ПроверяемоеЗначение, ДопСообщениеОшибки = "" ) - проверить, что значение заполнено

  • ПроверитьНеЗаполненность ( ПроверяемоеЗначение, ДопСообщениеОшибки = "" ) - проверить, что значение не заполнено

  • ПроверитьТип ( Значение, ТипИлиИмяТипа, ДопСообщениеОшибки = "" )

    • проверить, что тип значения совпадает с ожидаемым типом данного
    • в качестве типа можно передать как Тип, так и имя типа
  • ПроверитьВхождение ( строка, подстрокаПоиска, ДопСообщениеОшибки = "" ) - проверить, что строка из 2-го параметра является подстрокой 1-го параметра

  • ПроверитьВхождениеВКоллекцию(Элемент, Коллекция, ДопСообщениеОшибки = "")

    • проверить, что элемент входит в коллекцию
    • В качестве коллекции могут выступать
      • Массив,
      • Структура,
      • Соответствие,
      • ФиксированныйМассив,
      • ФиксированнаяСтруктура,
      • ФиксированноеСоответствие,
      • СписокЗначений
  • ПроверитьНаличиеОбъектаИБ ( ссылка, ДопСообщениеОшибки = "" )

    • проверить, что в базе данных есть такая ссылка
    • выполняется попытка получить объект.
  • ПроверитьВалидностьЗапросаСКД( ТекстЗапроса, ДопСообщениеОшибки = "" ) - проверяется правильность запроса для СКД

  • ПроверитьВыполнилось ( СтрокаАлгоритм, ПараметрыИлиДопСообщениеОшибки = Неопределено, Знач ДопСообщениеОшибки = "" )

    • проверяется возможность выполнения переданного алгоритма
    • ПараметрыИлиДопСообщениеОшибки - если строка, то используется как сообщение об ошибке. Иначе можно использовать как коллекцию (Массив, Структура и т.п.).
    • Пример вызова:
      ИмяОтчета = "ТестовыйОтчетСКДДляСравнениеСЭталоном";
      Отчет = Отчеты[ИмяОтчета].Создать();
      Параметры = Новый Структура;
      Параметры.Вставить("Отчет", Отчет);
      Параметры.Вставить("КомпоновщикНастроек");
      юТест.ПроверитьВыполнилось(
        "Параметры.КомпоновщикНастроек = Параметры.Отчет.КомпоновщикНастроек", 
        Параметры, 
        "Ожидали, что компоновщик настроек будет получен, а это не так");
      КомпоновщикНастроек = Параметры.КомпоновщикНастроек;
  • ПроверитьНеВыполнилось ( Знач СтрокаАлгоритм, ПараметрыИлиОжидаемоеОписаниеОшибки = Неопределено, Знач ОжидаемоеОписаниеОшибкиИлиДопСообщениеОшибки = "", Знач ДопСообщениеОшибки = "" )

    • проверяется невозможность выполнения переданного алгоритма
    • ПараметрыИлиОжидаемоеОписаниеОшибки- если строка, то используется как строка с ожидаемым исключением. Иначе можно использовать как коллекцию (Массив, Структура и т.п.)
    • Пример вызова:
      ИмяОтчета = "ТестовыйОтчетСКДДляСравнениеСЭталоном";
      Отчет = Отчеты[ИмяОтчета].Создать();
      Параметры = Новый Структура;
      Параметры.Вставить("Отчет", Отчет);
      Параметры.Вставить("КомпоновщикНастроек");
      юТест.ПроверитьНеВыполнилось(
        "Параметры.КомпоновщикНастроек = Параметры.Отчет.КомпоновщикНастроек", 
        Параметры, 
        "Компоновщик настроек не получен", 
        "Ожидали,что компоновщик не удастся установить, но это не так");
      КомпоновщикНастроек = Параметры.КомпоновщикНастроек;
  • ПроверитьМетодВыполнился ( Объект, ИмяМетода, ПараметрыИлиДопСообщениеОшибки = Неопределено, ДопСообщениеОшибки = "" )

    • проверяется возможность выполнения метода объекта
    • в качестве параметров должен выступать массив, в котором заданы параметры
    • ПараметрыИлиДопСообщениеОшибки
      • если строка, то используется как строка с дополнительным сообщением об ошибке. В этом случае ДопСообщениеОшибки можно не указывать.
      • Иначе используется как массив параметров
    • Пример вызова:
      Отчет = Отчеты[ "ТестовыйОтчетСКДДляСравнениеСЭталоном" ].Создать();
      Параметры = Новый Массив;
      Параметры.Вставить("КомпоновщикНастроек");
      юТест.ПроверитьМетодВыполнился(
        Отчет, "Сформировать", Параметры, 
        "Ожидали, что компоновщик настроек будет получен, а это не так");
  • ПроверитьМетодНеВыполнился ( Объект, ИмяМетода, ПараметрыИлиОжидаемоеОписаниеОшибки = Неопределено, Знач ОжидаемоеОписаниеОшибкиИлиДопСообщениеОшибки = "", Знач ДопСообщениеОшибки = "" )

    • проверяется невозможность выполнения метода объекта
    • в качестве параметров должен выступать массив, в котором заданы параметры
    • ПараметрыИлиОжидаемоеОписаниеОшибки
      • если строка, то используется как строка с ожидаемым описанием ошибки/исключения метода.
      • Иначе используется как массив параметров
    • ОжидаемоеОписаниеОшибкиИлиДопСообщениеОшибки
      • если строка, то используется как строка с дополнительным сообщением об ошибке. В этом случае ДопСообщениеОшибки можно не указывать.
      • Иначе используется как массив параметров
  • ПроверитьРавенствоТабличныхДокументовТолькоПоЗначениям( ТабДок1, ТабДок2, УчитыватьТолькоВидимыеКолонкиИлиДопСообщениеОшибки = Ложь, УчитыватьТолькоВидимыеСтрокиИлиДопСообщениеОшибки = Ложь, Знач ДопСообщениеОшибки = "")

    • сравнивает 2 табличных документа, учитывая только значения и не учитывая оформление