Инструменты тестирования для тех, кому жалко тратить свое время на рутину
У пользователей и разработчиков на платформе «1С:Предприятие» нередко возникает необходимость проверки работоспособности конфигурации после обновления на последний актуальный релиз, внедрения нового функционала или в других случаях. В данной статье мы рассмотрим механизмы тестирования конфигураций 1С, их достоинства, недостатки и различия.
Самый распространенный вид тестирования – вручную. Например, после обновления конфигурации программист вынужден проверять все ситуации, возникающие во время работы пользователя в программе, смотреть, где возникают ошибки, и исправлять их. На это он может потратить от нескольких часов до нескольких дней, недель и даже месяцев. Продолжительность тестирования зависит от самой конфигурации, а если она не типовая, а измененная, то длительность зависит также от сложности доработок, внесенных в конфигурацию. Ручное тестирование отнимает не только много времени, но и сил специалистов. Также важное значение имеет человеческий фактор: специалист устает, отвлекается, пропускает некоторые ошибки по невнимательности, а также может ненамеренно внести новые ошибки.
Попробуйте решения для тестирования от «1С-ИжТиСи» бесплатно
Оцените, насколько наши сервисы и продукты будут полезны и выгодны именно для вас. Это совершенно ничего не стоит.
Заполните форму — а всё остальное организуют наши специалисты.
Также можно позвонить по бесплатному номеру 8 (800) 77-51-256 либо написать письмо на Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript..
Существуют различные механизмы тестирования на платформе «1С:Предприятие», среди которых:
- Тестирование и исправление информационной базы 1С;
- Автоматизированное тестирование в «1С:Предприятие 8.3»;
- Программный продукт «1С:Сценарное тестирование 8» (далее – СТ);
- Программный продукт «1С:Автоматическое тестирование конфигураций» (далее – АТ).
Тестирование и исправление информационной базы 1С
Механизм тестирования и исправления информационной базы 1С, встроенный в саму конфигурацию, является одним из простейших видов тестирования. Он запускается из режима Конфигуратора и служит для диагностики и устранения ошибочных состояний информационных баз, имеющих различный формат хранения данных (файловый или клиент-серверный).
Особенности:
Область применения данного вида тестирования невелика, поскольку он имеет строго ограниченное количество проверок: реиндексация таблиц, проверка логической целостности баз данных, проверка ссылочной целостности, пересчет итогов, сжатие таблиц информационной базы и реструктуризация таблиц. В то же время он не предполагает наличие у пользователя навыков программирования, все необходимые тесты уже написаны.
Автоматизированное тестирование
Автоматизированное тестирование в «1С:Предприятие 8.3» – это новый механизм, предназначенный для имитации интерактивных действий пользователей системы и проверки результатов этих действий.
При тестировании используются два вида клиентских приложений: менеджер тестирования и клиент тестирования. Менеджер тестирования устанавливает связь с клиентом тестирования и выполняет сценарий тестирования – код на встроенном языке, в котором описывается последовательность выполняемых интерактивных действий.
Особенности:
Для выполнения автоматизированного тестирования необходимо сначала разработать сценарий тестирования – написать внешнюю или встроенную в конфигурацию обработку, в которой будут последовательно описаны выполняемые шаги. После чего запустить исполнение созданной обработки в менеджере тестирования.
Данный вид тестирования предполагает наличие у пользователя навыков программирования, достаточных для создания обработок.
Сценарное тестирование
Подобный механизм тестирования представлен программным продуктом «1С:Сценарное тестирование 8». Это инструментарий для проверки работоспособности любой конфигурации системы «1С:Предприятие 8», который позволяет подготавливать необходимые тесты и выполнять их в ручном либо автоматическом режиме.
СТ состоит из двух внешних обработок: одна предназначена для записи теста, вторая – для его выполнения.
Тест представляет собой набор действий, которые пользователь должен выполнить в программе (например, создание новых элементов справочников, документов, заполнение данных на форме, нажатие кнопок). При автоматическом выполнении такого теста происходит имитация ввода информации пользователем. Выполнение команд теста по интерактивному созданию объектов и заполнению форм отрабатываются платформой так же, как если бы эти данные пользователь вводил с клавиатуры.
Особенности:
- Для разработки тестов не требуются навыки программирования, достаточно представления о работе тестируемой конфигурации на уровне пользователя.
- Позволяет писать и выполнять тесты для проверки работоспособности любой конфигурации на платформе «1С:Предприятие 8».
- Тесты, как правило, пишутся для наиболее часто используемых сценариев реальной работы пользователей с прикладным решением и выполняются на каждой новой версии измененной конфигурации или платформы.
- Тесты можно делать более или менее сложными, в зависимости от критичности ошибок в том или ином функционале прикладного решения и в зависимости от количества времени, которое в организации готовы потратить на тестирование.
- Для выполнения теста не требуется специальной подготовки тестируемой конфигурации.
- Имеется возможность при выполнении автоматизированного теста обойти обнаруженную ошибку вручную и продолжить выполнение теста в автоматическом режиме.
- Предоставляет возможность отладки шагов при записи теста.
Автоматическое тестирование конфигураций
Еще одним программным продуктом, позволяющим выполнять поиск ошибок в конфигурациях, является «1С:Автоматическое тестирование конфигураций». Он предназначен для максимально полной проверки работоспособности конфигураций на платформе «1С:Предприятие» редакций 8.2 и 8.3.
Он используется при тестировании функционала конфигурации, при выпуске нового релиза, тестировании конфигурации после обновления, а также конфигурации, полученной путем объединения функционала нескольких конфигураций.
Программный продукт может выполнять следующие тесты:
- Тест «Синтаксический контроль» предназначен для выявления синтаксических ошибок тестируемых конфигураций.
В отличие от типового синтаксического контроля модулей данный тест позволяет выявить все синтаксические ошибки модулей конфигурации за один запуск тестирования. При тестировании нескольких конфигураций показаны будут только вновь возникшие ошибки. - Тест «Проверка конфигурации» запускает стандартную проверку конфигурации – проверку логической целостности конфигурации и поиск некорректных ссылок. Позволяет сопоставлять ошибки в нескольких конфигурациях.
- Тест «Вызов событий форм» имитирует работу пользователя с конфигурацией: выполняется программное открытие всех форм тестируемых объектов конфигурации, генерируются различные события форм и элементов управления. Сравнивает результат работы теста для нескольких конфигураций и выводит отчет тестирования обновленной конфигурации (также имеется возможность посмотреть отчеты для всех четырех конфигураций).
- Тест «Анализ оборотов и остатков» позволяет сравнивать регистры тестируемой и эталонных конфигураций.
- Тест «Сравнение движений документов» выполняет проведение документов информационной базы и сохраняет их движения в специальном формате. Если при указании нескольких конфигураций окажется, что результаты их движений различаются, будет выведено предупреждение об изменение логики работы.
- Группа тестов «Проверка метаданных» включает в себя три теста:
- тест «Метаданные» проверяет корректность обновления метаданных обновленной конфигурации;
- тест «Формы» выполняет проверку корректности обновления обычных и управляемых форм, их реквизитов и элементов управления обновленной конфигурации;
- тест «Роли» выполняет проверку корректности обновления ролей обновленной конфигурации.
Особенности:
- Выполняет комплексное тестирование конфигураций, разработанных на платформе «1С:Предприятие», полностью в автоматическом режиме. Участие пользователя требуется только для запуска тестирования и последующего исправления найденных программой ошибок.
- Не требует предварительного создания тестов для проверки работоспособности конфигурации 1С, они уже имеются в программе и применимы для любых конфигураций.
- Позволяет тестировать не только типовые конфигурации, но также сильно измененные.
- Качество тестирования не зависит от степени критичности ошибок и их количества в конфигурации.
- Для запуска тестирования не требует дополнительных приложений, обработок или каких-либо сложных настроек конфигурации.
- После завершения тестирования формирует отчет о различиях и ошибках, найденных в работе тестируемых информационных баз. В списке обнаруженных ошибок указывается место и контекст их возникновения (облегчает процесс исправления ошибок). Также имеется возможность посмотреть время выполнения того или иного события.
- Автоматически формирует отчет по списку процедур и функций, которые не удалось вызвать автоматически, с указанием возможных причин (отчет «Покрытие кода тестами»).
- Помогает в устранении найденных ошибок. После завершения тестирования выводит подробный список задач, которые должен вручную выполнить специалист для исправления ошибок.
- Тестирование можно выполнять с использованием от одной до четырех конфигураций одновременно, при этом все, кроме основной, будут считаться эталонными.
- Позволяет производить сравнительный анализ производительности работы тестируемых конфигураций.
- Позволяет выполнять выборочное тестирование – тестирование отдельных объектов конфигурации, запуск отдельных тестов, направленных на решение конкретных задач).
- Имеет возможность запуска на платформе «1С:Предприятие» как редакции 8.2, так и редакции 8.3.
- Используется для тестирования одной или нескольких конфигураций с режимом запуска как «Обычное приложение», так и «Управляемое приложение».
Сравнение программных продуктов и механизмов тестирования
Проведя сравнение АТ с другими механизмами тестирования, например, с СТ, можно выделить ряд существенных преимуществ данного программного продукта.
Отличия «1С:Автоматическое тестирование конфигураций» от «1С:Сценарное тестирование 8»:
- СТ требует ручной подготовки сценариев тестирования. В случае изменения функционала необходимо заново разрабатывать сценарии тестирования.
- Работа СТ не автономна. При возникновении критичных ошибок процесс тестирования останавливается.
- Список ошибок в СТ протоколирует пользователь, а в АТ он формируется автоматически.
- СТ может находить ошибки, которые зависят от последовательности действий пользователя.
- СТ позволяет настраивать тестирование взаимосвязи объектов. В АТ каждый объект тестируется независимо, за исключением ввода на основании, открытия форм из «родительского» объекта (например, подбор или выбор из справочника).
- СТ можно настроить на работу с пустой базой, а для работы АТ необходимо наличие информационной базы, максимально близкой к продуктивной.
- На текущий момент АТ проверяет эталонные значения только для движений и регистров.
Мы рассмотрели четыре механизма тестирования конфигураций 1С, из которых каждый специалист может выбрать наиболее подходящие для него инструменты и повышать качество конфигураций, значительно сократив трудозатраты, по сравнению с тестированием вручную.