Qa automation engineer python

QA Automation Engineer (Python)

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

Бренд ITentika появился в 2022 году, когда российский офис международного разработчика ПО DataArt сменил владельцев и стал частью инвестиционно-управляющей компании N3.Group.

Наш клиент занимает лидирующие позиции на рынке видеонаблюдения для умных городов, регионов и крупного бизнеса.

Наша команда участвует в разработке сервисов для формирования безопасной среды для граждан, повышения технологичности городской инфраструктуры и повышения уровня услуг.

Основной стек проекта: java (8, 17), spring framework, microsevices, groovy, grails, react

автоматизация тестирования на python; нагрузочное тестирование groovy+jmeter+python

Работа на территории России (удаленно или в офисах СПб, Воронеж).

Ожидания от кандидата

Основные задачи:

  • Поддержка/доработка инструментов автоматизированного тестирования на языке Python;
  • Развитие подходов к тестированию и участие в формировании методик;
  • Интеграция инструментов автоматизированного тестирования с CI (Jenkins);
  • Интеграция отчетов в Allure,TestRail,TestIT;
  • Взаимодействие с командой разработчиков и инженеров;
  • Покрытие нового и имеющегося функционала автоматизированными тестами;
  • Анализ результатов автотестов и последующее заведение дефектов.
  • Опыт автоматизации тестирования от 2-х лет;
  • Готовность к созданию автоматизированного тестирования с нуля;
  • Хорошее понимание процесса разработки и тестирования ПО/функциональное, нагрузочное, регресс и т.д.;
  • Опыт разработки на Python;
  • Знание PyTest;
  • Опыт работы с Selenium;
  • Практический опыт использования Linux окружения;
  • Опыт работы с Git;
  • Опыт интеграции отчетов в Allure,TestRail,TestIT;
  • Опыт работы с системами управления проектами и задачами (Redmine):
  • Рассматриваем кандидатов, находящихся на территории РФ.
Читайте также:  Python random number numpy

Плюсом будет:

  • Знание одного или нескольких скриптовых языков Bash и т.д.;
  • Опыт тестирования приложений под Linux;
  • Опыт работы с базами данных: MySQL или любая другая реляционная СУБД;
  • Навыки работы с системами виртуализации и их автоматизации VMWare;
  • Знание протоколов вещания медиа-данных HTTP, HLS, RTMP, RTSP, RTP/RTCP.

Условия работы

  • Большая профессиональная команда: архитекторы, разработчики, тестировщики, бизнес-аналитики, дизайнеры;
  • Сложные и интересные задачи;
  • Обучение и развитие;
  • Демократичная атмосфера, где нет иерархии, бюрократии, а к друг другу принято обращаться на «ты»;
  • Гибкий график работы, возможность работать удаленно из любого города;
  • Аккредитованная IT-компания;
  • ДМС с первых дней работы, 3 оплачиваемых day off;
  • Оформление по ТК РФ, достойный уровень компенсации.

Источник

Чем занимается автоматизатор тестирования на Python и как им стать

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

Python — это швейцарский нож в сфере тестирования. Он поможет написать UI-тесты, сгенерировать большое количество данных и протестировать API. Да и в целом в стандартных библиотеках Python есть готовые инструменты для автоматизации тестирования.

Эрик Бурыгин, руководитель команды тестирования мобильных приложений в Яндексе и автор курса «Тестирование веб-приложений на Python», рассказал, чем Python удобен для тестировщика.

Кто такой автоматизатор тестирования на Python

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

Автоматизировать тесты можно на различных языках, но не каждый язык настолько универсален, как Python. Так, например, на Swift удобно автоматизировать iOS-приложения, а на JavaScript — веб-приложения, в то время как на Python можно автоматизировать всё. В этом его плюс.

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

Какие задачи решает автоматизатор

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

Также в задачу автоматизатора входят задачи по уже готовым проектам: настройка CI, подключение отчётности или внедрение новой библиотеки. Но такие задачи появляются обычно на более поздних этапах работы. На начальных этапах обычно требуется написание тестов и иногда их рефакторинг, если команда решила пересмотреть какой-нибудь подход.

Тесты — не единственное направление работы. У нас в команде старшие автоматизаторы не проводят тесты, а пишут собственные инструменты для автоматизации, которые помогают упростить и ускорить работу всей команды.

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

Какими инструментами пользуется автоматизатор на Python

Есть множество хороших инструментов «из коробки», например Selenium. Это мощный и функциональный инструмент, который позволяет взаимодействовать с веб-приложением: кликать, скроллить или вводить данные — в общем, делать всё, что может делать человек, и даже немного больше. И всё это можно автоматизировать.

Есть большое разнообразие фреймворков и библиотек на Python для любых задач тестирования, от простых до универсальных, например PyUnit, PyTest, Robot Framework, Lettuce и Behave. Если ничего не подойдёт, всегда можно написать что-нибудь своё — однажды мы именно так и сделали.

Что должен уметь автоматизатор

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

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

Важно, чтобы автоматизатор был знаком с областью, в которой он собирается работать. Например, вы привыкли автоматизировать веб, знаете его инструменты и архитектуру — это даёт вам больше контекста и понимания в работе. Но если вам предложат делать автоматизацию бэкенда, вам будет сложно и придётся много и быстро учиться. Для работы с бэкендом потребуется разобраться, как он устроен, что такое REST, чем отличаются методы, что такое тело запроса, заголовки, параметры и тому подобное.

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

С чего начать обучение

Я бы рекомендовал сначала изучить тестирование в любом виде, а затем выбрать, что хочется автоматизировать. Самое бесполезное — обучение в стол. Поэтому сначала ответьте на вопрос, что вы хотите автоматизировать, а потом подумайте, на чём вы будете это делать.

Например, я хочу автоматизировать веб, и для этого мне нужно выучить Python. Но если я буду пытаться изучить всё, что касается Python, толку не будет. Я попросту не буду знать, когда моих знаний окажется достаточно.

Когда мы говорим о классическом подходе к изучению языков программирования, то чаще всего имеем в виду решение задач и написание алгоритмов. При этом тестированию уделяется мало времени и задачи разбираются поверхностно.

— На курсе «Тестирование веб-приложений на Python» в Яндекс Практикуме мы фокусируемся именно на тех знаниях, которые требуются автоматизатору. Это короткий двухмесячный курс, на котором мы рассказываем, как автоматизировать тестирование веб-приложений. Мы обучаем базовым инструментам: языку Python, философии юнит-тестов и работе в Selenium. А ещё учим составлять красивые и функциональные отчёты в Allure.

Если вы хотите стать автоматизатором тестирования, для начала посмотрите на Python и попробуйте понять, комфортно ли вам на нём работать, ведь это будет ваш основной инструмент. Будьте честны с собой и, если хотите попробовать свои силы в автоматизации, — дерзайте!

Что посмотреть и почитать

— Лекции Школы автоматизации Яндекса.

Источник

Оцените статью