• На кого ассайнить баг?

    @Medovochka Автор вопроса
    В разных источниках ответили по-разному, вдруг кому-то еще пригодится:

    • Поскольку причиной все еще может быть серверная часть, то различие между серверной частью и интерфейсом кажется относительным. Можно ассайнить на любого из, потом переассайнят в случае чего
    • Ассайнить на фронт-энд разработчика, так как ошибки 500 - это только для бэк-энд разработчика, остальные - для фронт-энд разработчика
    • Уточнить у ТимЛида, как правильно заведено. Возможно, в начале на Лида вещаются, а он сам распределяет на кого надо
    • Если что-то связано с кнопками чтобы кликались (а сама логика кнопки, редиректы и далее - это бэк-энд) / отображением чего-то в браузере - это к фронт-энд разработчику, а по логике под капотом - это уже к бэк-энд разработчику. В моем случае ассайнить все эти баги на бэк-энд разработчика

    Ответ написан
    3 комментария
  • Где удобно структурировать чек-листы и тест-кейсы проектов?

    Как то на аутаффе работал вот с этим инструментом - qase.io, мне очень понравился, хотел даже утащить его на внутренний проект его, но компания начала разработку своего инструмента))
    Еще помниться юзал как то sitechco.ru, но на тот момент не актуально для моего проекта было.
    Надеюсь помог, удачи)
    Ответ написан
    Комментировать
  • С чего начать изучение автоматизации тестирования?

    @taktik
    Sr. QA automation | SDET
    На этот вопрос нельзя ответить просто. Объем того, что нужно изучить зависит от специфики проекта. Если проект представляет собой сайт с серверным рендерингом или SPA с rest-бэкендом, то это один путь со своим набором технологий. Если десктопное или мобильное приложение - другой путь с другим набором технологий.

    Важное значение имеет то, как организован процесс разработки. Одно дело, если это водопадная модель, совершенно другое если это современный DevOps стек, где автотесты должны быть частью пайплайна и запускаться по нескольку раз в день.

    Допустим ваш проект - это SPA с rest-бэкендом, значит интеграционный слой пирамиды тестирования можно закрыть api-тестами, а end-to-end слой - UI тестами. Но тут тоже не все так просто, api-тесты могут запускаться на отдельно поднятом сервисе с замоканным окружением, а могут запускаться для сервиса развернутого в тестовой ифраструктуре.

    В общем случае можно посоветовать следующее:
    1) Изучайте один из популярных языков, лучше всего Python, он наиболее универсальный и имеет низкий порог вхождения
    2) Начинайте с автоматизации api уровня
    3) Если на проекте есть CI/CD пайплайн, сразу интегрируйте тесты в него, пусть запускаются как отдельный стейдж
    4) Настройте отправку сообщений о прохождении тестов в корпоративный месседжер. Очень важно, чтобы о тестах знала вся команда, а не только тестировщики
    5) Для UI тестов используйте Selene - это удобная обертка поверх selenium
    5) Не пишите много UI тестов. Достаточно небольшого количества покрывающих основные пользовательские сценарии

    Но я очень сомневаюсь, что джун осилит это все. Поговорите с руководством и пусть наймут опытного автоматизатора, если есть реальная потребность.
    Ответ написан
    1 комментарий
  • Что такое end-to-end тестирование?

    pi314
    @pi314
    Президент Солнечной системы и окрестностей
    Понятие еnd-to-end обозначает всего-навсего классификацию тестов по уровню, на котором тестируется система, и, само по себе, ничего не говорит ни о том, какие конкретно должны быть эти тесты, ни о том, какую роль они играют в общей стратегии обеспечения/проверки качества и, также, не является методикой тестирования. (Методика - это совсем другое понятие.)

    Для понимания сути этого понятия хорошо сравнить его с модульным ("нижний" уровень) и интеграционным ("средний") тестированием на каком-нибудь конкретном примере. Давайте рассмотрим некий сферический webshop в вакууме. Предположим, в нем есть 50 классов и для большинства из них написаны модульные тесты. Они проверяют исключительно функционал конкретного модуля (чаще всего, класса), т.е. тот, что зависит только от самого модуля и ни от чего чего более. Потом есть интеграционные тесты. Они проверяют корректность работы отдельных "модулей", если их собрать вместе согласно архитектурe. Например, работает ли правильно "Корзина", состоящая, в свою очередь, из 10 классов (предварительно проверенных модульными тестами), или "Корзина", подключенная к "Вебморде" и т.д. Где-то повыше в этой иерархии есть такие интеграционные тесты, которые проверяют конкретный функционал всей системы. Например, отправляется ли юзеру мейлом копия оплаченного заказа...

    И вот тут начинается самое интересное для понимания того, что такое end-to-end тестирование! Можно представить себе тест, проверяющий, что соответствующий мейл генерируется и сбрасывается SMTP серверу. Если SMTP сервер не рассматривать, как часть разрабатываемой системы, то этот тест вполне можно назвать end-to-end тестом (послали кучку HTTP запросов через "Вебморду" и проверили сброс мыла на SMTP - все зашибись!). Однако, если настройки и эксплуатация SMTP сервера - часть проекта (например, заказана разработка webshop "под ключ"), может оказаться, что это мыло будет отфильтровано каким-нибудь спам-фильтром, превысит лимит почтового ящика пользователя... короче, не дойдет до него. Тогда этот же самый тест уже нельзя считать end-to-end, а нужно бы было написать тест, проверяющий приход мыла в POP3/IMAP ящик. (Опять же, если это действительно нужно! Ибо, в зависимости от конкретных функциональных и нефункциональных требований, архитектор и QA инженер вполне могут найти возможность обеспечить адекватный контроль качества и без такого теста.)

    Таким образом, end-to-end тесты, это такие интеграционные тесты, которые воздействуют на систему через ее самые внешние интерфейсы и проверяют ожидаемую реакцию системы через эти же интерфейсы. Почему именно интеграционные? Потому, что это единственное, что можно о них сказать наверняка: они по определению не могут быть модульными тестами. А все остальное: являются ли они одновременно приемочными, нагрузочными или еще какими - зависит только от общих плана/стратегии тестирования и той роли, которые эти тесты в них играют.
    Ответ написан
    Комментировать