40
0
0
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники
Назад

Как прокачать тестирование на 1С: опыт и ошибки

Время чтения 3 минуты
Нет времени читать?
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники
40
0
0
Нет времени читать?
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники

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

Как прокачать тестирование на 1С: опыт и ошибки

И аналитик, и тестировщик

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

Но разве принципы тестирования не универсальны? Недостаточно освоить базовые методики, чтобы использовать их применительно к любой задаче? Отчасти это правда: человек, обладающий фундаментальными знаниями, сможет адаптировать их под конкретную платформу. Но в реальности ситуация обстоит сложнее.

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

Возникает логичный вопрос: если аналитик не обладает специализированными знаниями по тестированию, насколько качественно он сможет выполнить эту работу? Конечно, у каждого человека есть интуитивные навыки тестирования. Например, прежде чем запустить посудомоечную машину, мы проверяем, залито ли специальное средство, правильно ли расставлена посуда и та ли программа выбрана, — мы проводим тестирование, опираясь на свой опыт, даже если сами этого не осознаем. Аналитики 1С часто проверяют реализованную функциональность аналогичным образом: на основе полученных ранее знаний. Однако у каждого этот уровень разный, а значит, и качество тестирования может существенно различаться.

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

Автоматизация тестирования на 1С: обучение внутри компании

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

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

Как организовать обучение?

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

В программу курса включили следующие модули:

1. Основы работы с Vanessa-Automation — основным фреймворком тестирования в нашей компании.

2. Изучение языка Gherkin и его адаптации TurboGherkin:

  • структура фича-файла;
  • групповые шаги;
  • переменные (локальные и глобальные);
  • экспортные сценарии;
  • структура сценариев;
  • конструкции условия, цикла, попытки/исключения.

3. Процесс командного тестирования с использованием Git, GitLab и Visual Studio Code.

4. Практическое тестирование: от простых кейсов к сложным сценариям.

5. Анализ результатов тестирования с применением отчетов Allure.

6. Разработка видеоинструкций с помощью Vanessa-Automation.

Каждый модуль занимает неделю, всего курс рассчитан на 1,5 месяца. Группы формируются из 10–12 человек, что позволяет эффективно проверять задания и лично давать обратную связь. Без детального анализа работ обучение теряет смысл: нюансов в тестировании очень много, и их можно освоить только на практике под руководством опытного специалиста.

Особенности тестирования 1С

Рассмотрим пример. Нужно автоматизировать тестирование создания документа «Поступление денег». В Vanessa-Automation можно записать сценарий действий пользователя, но появится первая проблема: проверка наличия документа в базе автоматически не фиксируется. При ручном тестировании аналитик сам убедился бы в этом, но как поступить при автоматизации?

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

При этом в списке документов представление значения поля «Дата» отображается с одним пробелом:

Если не учесть этот момент, тесты будут падать без видимой причины. Опытный тестировщик сможет заметить и исправить эту ошибку: разработать сценарий таким образом, чтобы он был независим от времени выполнения. Для этого нужно сохранить значение поля «Дата» в переменную «ДатаДокументаИсходная» (см. строку 31 на скриншоте ниже), а далее значение переменной «ДатаДокументаИсходная» преобразовать в нужный нам вид и сохранить в переменную «ДатаДокумента». Для преобразования значения можно использовать методы работы с датой либо методы работы со строкой на языке 1С (см. строку 32).

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

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

Комментарии0
Тоже интересно
Комментировать
Поделиться
Скопировать ссылку
Telegram
WhatsApp
Vkontakte
Одноклассники