Программное создание тестовых да нных
Доступ к методам генерации тестовых реализован через ЮТест.Данные()
, этот метод возвращает общий модуль ЮТТестовыеДанные
.
Не рекомендуется обращаться к модулю ЮТТестовыеДанные
напрямую, используйте ЮТест.Данные()
Возможности
Инструменты работы с тестовыми данными можно разделить на следующие группы:
- Генераторы случайных значений
- Методы создания данных в информационной базе
- Методы загрузки из макетов
- Работа с файлами
Генераторы случайных данных
Как уже говорилось в статье в YAxUnit сделан большой упор на генерацию случайных тестовых данных, которая позволяет улучшить покрытие и сократить количество "лишнего" кода. Поставив в самом начале на такой подход мы еще ни разу в нем не разочаровались.
Создание случайных данных базируется на генерации примитивных значения:
-
Числа
ЮТест.Данные().СлучайноеЧисло
- Формирует случайное число в указанном диапазонеЮТест.Данные().СлучайноеПоложительноеЧисло
- Формирует случайное положительное число ограниченное максимумомЮТест.Данные().СлучайноеОтрицательноеЧисло
- Формирует случайное отрицательное число ограниченное минимумом
-
Строки
ЮТест.Данные().СлучайнаяСтрока
- Формирует случайную строку указанной длиныЮТест.Данные().СлучайныйИдентификатор
- Формирует случайный валидный идентификатор (Первым символом должна быть буква или символ подчеркивания, каждый из последующих символов может быть буквой, цифрой или символом подчеркивания)ЮТест.Данные().СлучайныйIPАдрес
- Формирует случайный IP адресЮТест.Данные().СлучайныйНомерТелефона
- Формирует случайный номер телефонаЮТест.Данные().УникальнаяСтрока
- Создает строку на базе нового уникального идентификатора
-
Даты
ЮТест.Данные().СлучайнаяДата
- Формирует случайную дату в указанном диапазонеЮТест.Данные().СлучайноеВремя
- Формирует случайное времяЮТест.Данные().СлучайнаяДатаВБудущем
- Формирует случайную дату в будущем (больше текущей) с возможностью ограничить максимальное значение.
Пример:СлучайнаяДатаВБудущем(2, "часа")
- будет сформирована дата в интервале (ТекущаяДата, ТекущаяДата + 2 часа]ЮТест.Данные().СлучайнаяДатаВПрошлом
- Формирует случайную дату в прошлом (меньше текущей) с возможностью ограничить минимальное значение.
Пример:СлучайнаяДатаВПрошлом(2, "часа")
- будет сформирована дата в интервале [ТекущаяДата - 2 часа, ТекущаяДата)ЮТест.Данные().СлучайнаяДатаПосле
- Формирует случайную дату, которая больше указанной с возможностью ограничить максимальное значение.
Пример:СлучайнаяДатаПосле(Дата, 2, "часа")
- будет сформирована дата в интервале (Дата, Дата + 2 часа]ЮТест.Данные().СлучайнаяДатаДо
- Формирует случайную дату, которая меньше указанной с возможностью ограничить минимальное значение.
Пример:СлучайнаяДатаДо(Дата, 2, "часа")
- будет сформирована дата в интервале [Дата - 2 часа, Дата)
-
Булево
ЮТест.Данные().СлучайноеБулево
- Возвращает случайное булево
-
Получение случайного из предопределенного списка
-
ЮТест.Данные().СлучайноеЗначениеИзСписка
- Возвращает случайное значение из указанного спискаВозможныеЗначения = ЮТКоллекции.ЗначениеВМассиве(-1, 0, 1);
Возврат ЮТест.Данные().СлучайноеЗначениеИзСписка(ВозможныеЗначения); -
ЮТест.Данные().СлучайноеЗначениеПеречисления
- Возвращает случайное значение перечисления Примеры:Цена = ЮТест.Данные().СлучайноеЗначениеПеречисления(Перечисления.ВидыЦен); // Можно получить значение через указание менеджера
Цена = ЮТест.Данные().СлучайноеЗначениеПеречисления("Перечисление.ВидыЦен"); // Или имя объекта метаданных (подходит для работы с клиента) -
ЮТест.Данные().СлучайноеПредопределенноеЗначение
- Возвращает случайное предопределенное значение Примеры:Цена = ЮТест.Данные().СлучайноеПредопределенноеЗначение(Справочники.ВидыЦен); // Можно получить значение через указание менеджера
Цена = ЮТест.Данные().СлучайноеПредопределенноеЗначение("Справочник.ВидыЦен"); // Или имя объекта мета данных (подходит для работы с клиента)
-
-
ЮТест.Данные().Подражатель
- генератор правдоподобных данных. Генерирует случайные данные на базе словарей, является реализацией faker для 1С.ЮТест.Данные().Подражатель().Люди
ЮТест.Данные().Подражатель().Компании
Наименование
- Формирует случайное наименование компанииИНН
- Формирует случайный ИНН компанииКПП
- Формирует случайный КПП компании
ЮТест.Данные().Подражатель().Банки
НомерСчета
- Формирует случайный номер банковского счетаБИК
- Формирует случайный валидный БИК банка