Есть ли опыт тестирования 1С системы?

Ответ

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

Ключевые аспекты работы:

  • Ручное тестирование: Составление и выполнение тест-кейсов для сквозных бизнес-сценариев (например, «от заказа до оплаты»), проверка корректности проведения документов и формирования отчетов.
  • Автоматизация на встроенном языке: Написание процедур на языке 1С для автоматизации регрессионных проверок в режиме «Конфигуратор».
  • Работа с данными: Подготовка и загрузка тестовых данных, проверка целостности данных после миграций или обновлений конфигурации.
  • Интеграционное тестирование: Проверка обмена данными с внешними системами (банки, CRM, бухгалтерские сервисы) через типовые механизмы (web-сервисы, COM-соединение).

Пример кода для автоматизированной проверки:

Процедура Тест_ПроведениеДокумента() Экспорт
    // Подготовка тестовых данных
    Контрагент = Справочники.Контрагенты.СоздатьЭлемент();
    Контрагент.Наименование = "Тестовый контрагент";
    Контрагент.Записать();

    // Создание и проведение документа
    Док = Документы.ПриходнаяНакладная.СоздатьДокумент();
    Док.Дата = ТекущаяДата();
    Док.Контрагент = Контрагент;

    // Проверка успешной записи и проведения
    Утвердить(Док.Записать() = Истина, "Ошибка записи документа");
    Утвердить(Док.Провести() = Истина, "Ошибка проведения документа");
    Утвердить(Док.Проведен = Истина, "Флаг проведения не установлен");
КонецПроцедуры

Ответ 18+ 🔞

А, опыт с «1С:Предприятием»? Да, был, конечно. В основном, конечно, ручками всё щупал — бизнес-логику, документооборот, отчёты, расчёты всякие. Ну, стандартная история, когда нужно убедиться, что эта штука не накроется медным тазом в самый ответственный момент.

Что конкретно делал, если по делу:

  • Ручное тестирование: Это когда сидишь и как обезьяна повторяешь сквозные сценарии — от заказа клиента до оплаты и отгрузки. Составляешь кейсы, проверяешь, чтобы документы проводились без косяков, а отчёты не вываливали хуй с горы вместо цифр. Волнение ебать, пока всё не прогонишь.
  • Автоматизация на встроенном языке: Ну, это уже для ленивых, как я. Когда надоедает каждый раз тыкать в одно и то же, пишешь процедурки прямо в конфигураторе, чтобы они за тебя регресс гоняли. Экономия времени — овердохуища.
  • Работа с данными: Самая весёлая часть — подготовка тестовых данных. А потом смотришь, чтобы после обновления или миграции вся эта куча не превратилась в манду с ушами. Целостность — наше всё.
  • Интеграционное тестирование: А вот это уже высший пилотаж. Когда твоя «1С» должна общаться с внешним миром — банками, CRM-ками. Проверяешь обмены через web-сервисы или COM. И тут доверия ебать ноль, пока сам не убедишься, что данные не теряются где-то в пути.

Вот, смотри, пример кода, как я автоматизировал простую проверку. Ничего сложного, но помогает:

Процедура Тест_ПроведениеДокумента() Экспорт
    // Подготовка тестовых данных
    Контрагент = Справочники.Контрагенты.СоздатьЭлемент();
    Контрагент.Наименование = "Тестовый контрагент";
    Контрагент.Записать();

    // Создание и проведение документа
    Док = Документы.ПриходнаяНакладная.СоздатьДокумент();
    Док.Дата = ТекущаяДата();
    Док.Контрагент = Контрагент;

    // Проверка успешной записи и проведения
    Утвердить(Док.Записать() = Истина, "Ошибка записи документа");
    Утвердить(Док.Провести() = Истина, "Ошибка проведения документа");
    Утвердить(Док.Проведен = Истина, "Флаг проведения не установлен");
КонецПроцедуры

В общем, работа как работа. Главное — понимать, что тестируешь, и иметь терпения ебать, потому что иногда система ведёт себя как хитрая жопа. Но когда всё работает — красота.