Найти тему

Рождение автоматизированного тестирования в 1С

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

Но начнем с азов.

Что из себя представляет программа 1С?

Под термином «Программа 1C» подразумевают сразу два понятия неразрывно связанных между собой: платформа и прикладное решение. Прикладное решение еще называют «Конфигурация».

Программа 1C = Платформа + Конфигурация

Вначале устанавливается платформа, а затем на платформу устанавливаются необходимые конфигурации. В классическом варианте платформа установлена одна, а конфигураций может быть несколько. Но на практике платформ может быть установлено несколько. Они отличаются номером версии. Это может быть из-за того, что некоторые конфигурации были написаны под определенные версии платформы.

Платформа 1С

Платформа - это самостоятельный инструмент, являющийся средой разработки и одновременно движком, внутри которого функционирует прикладное решение. Соответственно:

  • Платформа служит средой для разработки конфигураций;
  • Конфигурации выполняются внутри платформы и полностью опираются на ее механизмы;
  • Платформа содержит инструменты, необходимые для администрирования и поддержки конфигураций.

Без платформы невозможно запустить конфигурацию, но платформа может работать без конфигурации. Доступ к изменению платформы имеет только сама фирма «1С».

Конфигурация 1С

Конфигурация или прикладное решение - это та часть программы 1С, которая служит для решения конкретной задачи, но полностью опирается на технологии платформы и не может функционировать отдельно.

Имея платформу 1С, можно разрабатывать свои собственные конфигурации и вносить изменения в готовые конфигурации, предоставляемые фирмой «1С» и ее партнерами.

-2

Конфигурации 1С можно разделить на следующие группы:

  • Типовые;
  • Отраслевые;
  • Специализированные.

Типовые конфигурации - это все программные продукты разрабатываемые непосредственно фирмой «1С».

Примеры распространенных типовых конфигураций:

  • «1С:Бухгалтерия»;
  • «1С:Зарплата и управление персоналом»;
  • «1С:Управление торговлей»;
  • «1С:ERP Управление предприятием 2»;
  • «1С:Розница».

Отраслевые конфигурации - это инструменты, созданные специально под нужды конкретной сферы деятельности бизнеса. Такие конфигурации часто разрабатываются на базе типовых. А разработкой занимаются компании-партнеры фирмы «1С».

Примеры отраслевых конфигураций:

  • «1С:Общепит»;
  • «1С:Салон красоты»;
  • «1С:Медицина. Поликлиника»;
  • «1С:Детская школа искусств».

Специализированные конфигурации - это остальные конфигурации, которые не относятся к типовым и отраслевым. Сюда можно отнести технологические дистрибутивы, в том числе и инструменты для автоматизации тестирования. А также конфигурации, написанные под узкую специализацию, которая широко не распространена.

Цифры в наименованиях конфигураций и платформ

Платформа и конфигурации имеют нумерацию из четырех разрядов цифр. Они нужны для отслеживания изменений, внесенных в программу. Изменения - это вечный двигатель! Они связаны с актуализаций норм законодательства, добавлением нового функционала и исправлением ошибок текущего.

Окно с информацией о программе, в котором указаны данные о версии платформы и конфигурации
Окно с информацией о программе, в котором указаны данные о версии платформы и конфигурации

Пример нумерации 3.0.131.27, где:

  • Комбинация из двух первых цифр - это редакция (3.0);
  • Комбинация из трех цифр - это релиз (3.0.131);
  • Комбинация из всех четырех цифр - это версия (3.0.131.27).

Но довольно часто все эти комбинации называют просто «версией». Потому не стоит удивляться, если встретится надпись «Новое в версии 3.0» или «Новое в версии 3.0.131» или «Новое в версии 3.0.131.270».

Автоматизированное тестирование

Начиная с выхода релиза платформы 8.3.2 активно начал развиваться механизм автоматизированного тестирования. Это именно платформенный механизм.

Автоматизированное тестирование - это процесс, во время которого происходит имитация интерактивных действий пользователя, с возможностью получения и оценки результатов этих действий.

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

Представление процесса автоматизированного тестирования 1С. И немного близняшек из компьютерной игры «Atomic Heart»
Представление процесса автоматизированного тестирования 1С. И немного близняшек из компьютерной игры «Atomic Heart»

Их можно сравнить с полушариями мозга. Менеджер тестирования - это левое полушарие, которое обрабатывает информацию по очереди, а клиент тестирования - это правое полушарие, обрабатывающее информацию одновременно. Или можно сравнить с близняшками из нашумевшей компьютерной игры «Atomic Heart». Кому как понятнее.

Менеджером тестирования может выступать только толстый или тонкий клиент. В качестве клиента тестирования может быть толстый клиент, тонкий клиент, веб-клиент, мобильный клиент или мобильное приложение.

Имитация действий пользователя осуществляется при помощи набора специализированных объектов встроенного языка, которые предоставляют доступ к интерфейсу и элементам форм клиентского приложения.

Чтобы облегчить работу по написанию тестов в платформе реализована возможность автоматической записи интерактивных действий пользователя в XML-файл.

Результат выполнения автоматизированного теста может контролироваться визуально, либо программно, путем сравнения полученных результатов с эталонными значениями.

А теперь поясню более простыми словами.

Для того чтобы написать и запустить автоматизированный тест, необходимо:

  1. Запустить первую программу 1С в режиме менеджера тестирования;
  2. Запустить вторую программу 1С в режиме клиента тестирования;
  3. Установить соединение менеджера тестирования с клиентом тестирования;
  4. Описать алгоритм действий на встроенном языке, т.е. написать автоматизированный тест. Это можно сделать двумя путями. Либо сразу вручную в менеджере тестирования. Либо записать свои действия на клиенте тестирования, выгрузить их в XML-файл, чтобы на основании него создать автоматизированный тест;
  5. Далее запустить данный алгоритм на менеджере тестирования. Все действия будут выполняться на клиенте тестирования. И по итогу выполнения теста получить результат. Фиксация результата происходит на менеджере тестирования.

Уже сейчас звучит не так сложно, как могло показаться на первый взгляд. А при использовании инструментов автоматизированного тестирования все еще проще, потому что они облегчают создание автоматизированных тестов.

Я просто хотел показать на каком принципе и возможностях платформы были реализованы современные инструменты для автоматизирования процессов тестирования.

А разговор о данных инструментах начнем уже в следующей статье.

-5