Заметки о QA
3.79K subscribers
16 photos
4 files
72 links
Семь раз погугли, один раз ответь

Сборник всех постов📁: https://tlabchuk.tilda.ws/useful
Boost🚀: https://t.me/boost/notes_about_QA

Админ @lilovaya_korova
Download Telegram
Карты развития QA Engineer
Частый запрос, с которым приходят к менторам, это в какую сторону развиваться, как перейти в автоматизацию или в целом какими навыками нужно обладать для разных уровней.
Для самопомощи собрала карты, матрицы и таблицы компетенций.

Карты развития
Большая дорожная карта развития тестировщика
Roadmap QA Engineer (на сайте можно найти карты развития по другим профессиям и скиллам)
Что должен уметь начинающий тестировщик
Дорожная карта тестировщика
Карта навыков от Junior до Senior
Дорожная карта QA

Матрицы компетенций
Матрица компетенций QA Engineer
Интересная таблица самоопределения для тестировщика (в посте по ссылке есть инструкция, как ей пользоваться)
Возможные компетенции тестировщика (найденная карта на просторах интернета)

QA Automation
Что должен знать QA Automation
Добавлю сюда гайд “Как вкатиться в автоматизацию”

Гайды по soft-skills
Soft skills для тестировщика
Софт-скиллы в QA: полный гайд

Если у вас есть ссылки на хорошие карты/гайды/матрицы, была бы рада увидеть их в комментариях звездочки 💫

#развитие #менторинг #собеседование
🔥393
This media is not supported in your browser
VIEW IN TELEGRAM
Если вдруг вы давно задумывались и хотели красиво оформить свой github (писала о таком оформлении вот в этом посте), то рекомендую два бесплатных инструмента для упрощения этой работы: тык и тык
(а если все-таки хочется еще один туториал самостоятельного оформления, то смело прыгайте в статью)
18🔥9👍5
Docker
Если у вас часто возникает мысль "Да кто это такой, ваш докер", то вот ссылочки, чтобы разобраться, кто же это

Что такое Docker (очень простыми словами от Ольги Назиной)
Основы docker
Docker для тестировщика. Контейнеры, чем они отличаются от виртуальных машин и зачем они нужны (видео)

Туториалы/гайды
Быстро
Обзорный туториал по docker
Docker — быстрый гайд
Поглубже
Уроки Docker для начинающих (видео)
Хороший туториал по докеру: тут уже вы погрузитесь в конкретные задачи и, повторяя за статьей, научитесь базовым вещам

Где можно потрогать ручками
Play with docker - онлайн-сервис для практического знакомства с Docker в форме игры: вам дают задание, а вы его выполняете и учитесь работать с docker. Вся работа происходит прямо в веб-браузере

#docker #инструменты #база
🔥455
Нашла крутую подборку про Postman. Хочу расширить ее еще парочкой полезных ссылок.

Обзорно про Postman: что это такое простыми слова, первые шаги работы в нем. Что-то похожее можно почитать еще и тут

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

Практика
Challenge 30 дней Postman
Postman-tutorial (видео-курсы на английском)

Просто полезное
Шпаргалка по базовым командам в Postman (и вот еще cheatsheet)
А еще рекомендую знакомиться с Postman на крутых чек-листах по API

#инструменты
16👏3👍1
Всем привет ✌️
Сегодня хотел бы рассмотреть такой замечательный инструмент как Postman.
Умение пользоваться этим инструментом даст вам как минимум дополнительную строчку в резюме
и + 5% к "Найти работу" .

Что почитать:
1. 🔴 Основы Postman для самых маленьких
2. 🔴 Большой гайд по тестированию с Postman для начинающих
3. 🔴 Введение в Postman

Что посмотреть:
1. 🌐 Уроки по Postman. Видеокурс для манульного и автоматизированного тестирования
2. 🌐 Postman Для Тестировщиков - Тестируем API Реального Проекта
3. 🌐 Postman для QA 2023 - миникурс

Где потренироваться:
1. Бесплатный курс на степике - Тестирование ПО: Postman для тестирования API
2. Если вы захотите попрактиковаться в работе с Postman, то ссылку на API для тренировки вы можете найти в этой и в этой статье.

Но ещё больше информации вы можете найти в официальном центре обучения Postman. В нём дана исчерпывающая информация по всем нюансам и приёмам работы с этим инструментом. Информация предоставлена абсолютно бесплатно и никакие курсы покупать не нужно.
Please open Telegram to view this post
VIEW IN TELEGRAM
14🔥7
Полезное для собеседований

Вопросы для подготовки
Популярные вопросы с ответами (2 часть больше для автотестировщиков) 1 часть, 2 часть и 3 часть
Собеседование с QA. 250+ вопросов для Junior, Middle, Senior (помните, что распределение уровней условно и под разную вакансию вопросы могут задавать не в соответствии с этим распределением)
Обзор частых вопросов по тестированию ПО на собеседованиях и ответы на них
Вопросы на английском языке
Вопросы про CI/CD
Вопросы про БД

О чем спросить работодателя?
💡Вопросы для собеседывающего
💡Вопросы для собеседывающего [2] (от авторки крутого канала по тестированию)
💡Что нужно узнать про компанию, прежде чем принять оффер (из прекрасного канала про тестирование)
💡О чем спросить работодателя — чеклист
💡Список вопросов к работодателю на английском

Послушать
🎧Выпуск от “Вроде в проде” про подготовку для собеседования на Manual QA
И не забывайте о видео на тему мок-собеседований, подробнее писала про это тут

#собеседование
🔥29👍2
Продолжение полезного для собеседований

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

Вопросы для QA automation
Java
Вопросы по Java core
43 вопроса для интервью TestNG
35 вопросов для интервью JUnit

Python
🐍Топ 25 вопросов и ответов на собеседовании по Python
🐍Шпаргалка для Python QA Automation
🐍Подборка материалов

Selenium
📗Подготовка к Собеседованию по Selenium - 30 Вопросов
📗QA Junior: Selenium

Общее
Ответы на вопросы на собеседование ООП
Крутой выпуск от ВродеВПроде о собеседовании на QA Auto (Java)
Подготовка к собеседованию QA Automation: темы и вопросы (видео)

#собеседование
🔥216👍1
☕️Полезное для Java-автоматизаторов☕️

Построение тестовой архитектуры

- Автоматизация тестирования с нуля часть 1 и часть 2 (RestAssured + TestNg)
- Обзорно архитектура автотестов с нуля на стеке JUnit, Selenide, Allure, Jenkins: вдруг вы начинаете писать автотесты и не знаете, с какой стороны к ним подойти, то эта статья для вас. Обзорно, поверхностно, но очень вкусно!
- Еще один туториал на стеке allure report + selenium + Test NG (🇬🇧)
- Архитектура для UI тестов: если вы только сталкиваетесь с тем, как организовать ваш тестовый фреймворк или поняли, что текущий вам только мешает, а не упрощает жизнь, то круто прочитать эту статью и вдохновиться!
- Простой и удобный шаблон тестового фреймворка на selenide для UI автотестов

Работа с REST

- Туториал-пример использования Retrofit в качестве REST клиента в своих тестах. Еще можно почитать вот тут
- Базовые вещи для работы с Retrofit: я знакомилась с данной библиотекой именно благодаря этой статье
- REST Assured: большой гайд

Работа с фреймворками

- Большой гайд по TestNG (и рекомендую данный сайт 🇬🇧)
- Шпаргалка с аннотациями TestNG
- Цикл статей туториалов по JUnit 5: расскажут вам про жизненный цикл, аннотации и много чего еще
- JUnit (🇬🇧): обзор того, из чего состоит фреймворк. На этом же сайте можно найти много других полезных вещей.

Cucumber

Если вам вдруг нужно применить BDD в своем коде, то бегом ближе знакомиться с внедрением:
- Cucumber + Java
- Руководство: Cucumber + Java
- Руководство по Akita (библиотека для BDD на русском)

#автоматизация #java
🔥19👍1😁1
🐍Полезное для Python-автоматизаторов🐍

Построение тестовой архитектуры

- Как правильно писать UI авто тесты на Python (pytest + playwright + allure)
- Как правильно писать API авто тесты на Python (pytest + httpx + jsonschema + allure + pydantic)
- Разбираемся с основами автотестирования API (pytest + requests + jsonschema + allure): пошаговая инструкция по созданию собственного фреймворка для проверки API
- Цикл статей про автоматизация тестов REST API (python + requests + pytest)
- Реализация паттерна Page Object на Python (pytest + selenium)

Работа с фреймворками

- Про фреймворки для автотестирования в целом
- Цикл перевода статей про PyTest (сама в какое-то время глубже погружалась именно по этим статьям)
- Туториал по PyTest
- Встроенные фикстуры Pytest

Полезное

- Создаем несложный REST-тест за 4 шага
- Не перестану рекомендовать лучший курс про selenium + pytest
- Отличный курс по python: есть подробные видео-лекции, много интересных задач на разнообразные темы.
- Крутая обучалка-шпаргалка для питонистов
- Статья про то, как организовать код в Python-проекте: все-таки python отличается гибкостью, которая может усложнять распределение классов по папкам. Надеюсь статья немного поможет упорядочить ваш проект.

#автоматизация #python
🔥16👍3👏1
Как улучшить резюме?

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

🛠Что я обычно рекомендую дорабатывать в резюме:

🟢Оформлять свой опыт через стек, обязанности и достижения.
Стек - какие программы/язык программирования/фреймворки и прочие инструменты вы использовали в работе.
Обязанности - какими делами занимались, своеобразный ответ на вопрос “что ты делал все это время?”. Для тех, кто помнит теорию Present Simple, можно применить ее тут.
Достижения - к чему привели ваши обязанности и какой результат вы достигли. Хочется в достижения написать “написал свой фреймворк”. Это же достижение! Но, к сожалению, это просто ваша работа. А вот если вы написали автотесты, что привело к ускорению тестирования - это уже достижение.
Кстати, вот тут интересное видео, почему стоит убрать фразу “написал свой фреймворк”
🟢Использовать конкретные цифры и факты, подтверждающие вашу компетентность и успех. Тут опять мы возвращаемся к достижениям и тому, как ваша работу изменила тестирование/команду/компанию, только теперь в конкретных значениях.
🟢Удалить, наконец, нерелевантный опыт или перенести его в “О себе”.
Опыт в нашей жизни - это очень важно. Но если ваша прошлая профессия совсем не связана с текущим поиском, то не стоит сильно акцентировать на этом внимание (кроме случаев, когда вакансия мечты напрямую не создает продукт для прошлой профессии или области).
🟢Если вы знаете компанию мечты, то оформлять резюме под необходимые ей навыки и обязанности.

Что поможет помочь, чтобы переработать свое резюме

🟢Полностью описать свой путь.
Прямо написать огромный рассказ, что ты делал, чем пользовался, какие возникали проблемы и как ты их решил/а, чем ты гордишься в своей работе. Еще дополнительно можно вспомнить, что особенно нравится делать, это поможет для выполнения следующей подсказки.
Плюс, это будет подготовка к блоку собеседования “О себе”. В идеале переработать огромный рассказ в краткий, состоящий примерно из 4-5 предложений о том, на каком этапе развития вы сейчас, какие навыки считаете самыми важными, чего конкретно смогли достичь на прошлом месте работы и к чему стремитесь сейчас.
Возможно, для ускорения того, чтобы вспомнить весь свой путь, поможет вот этот пост.
🟢Посмотреть рынок и выбрать понравившиеся вакансии.
Это поможет понять, что какие навыки у вас уже есть и “своровать” их в резюме, если вы о них забыли. А также поможет разобраться, в чем вы отстаете и что не хватает для компании мечты.

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

#резюме
🔥215
💪Тренажеры для прокачивания различных навыков💪

Поиск багов
- https://qahacking.guru/: есть список багов для самопроверки, в целом очень интересные баги! Отличный тренажер, чтобы отточить навык поиска багов.
- https://sychev.tech/practice: позволит вам найти баги (и заодно потестировать API с помощью swagger)
- http://shop.bugred.ru/
- https://www.saucedemo.com/: базовый онлайн-магазин с обязательным логином. Преимущество: есть разные роли, под которыми можно залогиниться и увидеть разные баги.

Чтение логов
Особенная проблема начинающих тестировщиков (или специалистов, у которых нет доступа к логам) - это научиться читать логи и работать с популярным инструментом для просмотра логов. Но есть отличная статья про Kibana и ее функции, а также тренажер для практики.
А про то, что такое логи и какие они бывают, можно почитать тут.

Навыки тест-дизайна/создания кейсов
- http://testingchallenges.thetestingmap.org/
- тестирование треугольника
- калькулятор

Практика API
- отличный челлендж тестирования API
- огромный список публичных API

Мои любимые открытые REST API:
- Fake REST API
- Vikunja
- Petstore

Автоматизация
- демо-сайты для практики автоматизации

Прочее
- список тестовых заданий для прокачки с гитхаба (искать по ключевому слову "qa"/"тестиров")
- тренажер для работы со снифферами
- тренажеры и тесты по java, git и прочему
- тест по JUnit (🇬🇧)
- сборник тренажеров от Артема Русова

#практика
🔥66
🌐Про браузеры, браузерные инструменты и devTools🌐

Как тестировать с помощью devTools
Если вы не работаете с devTools, но хотите научиться, или если вам опыт ограничен только вкладкой Network, то рекомендую почитать про этот инструмент поподробнее (в ссылках ниже информация может быть задублирована, но повторение - мать учения).

Обзор всех инструментов разработчика Chrome DevTools
Полезные функции DevTools для тестировщиков
14 наиболее полезных особенностей Chrome DevTools
Практические навыки Chrome DevTools
Статьи с полезной информации: 1, 2

А вот на этом канале часто постится полезное и интересное про devTools.

Браузерные инструменты
Огненный доклад про браузерные инструменты: как сделать так, чтобы браузер стал ваш лучшим другом при тестировании. Также девушки-докладчицы поделились чек-лист "Браузерные расширения: инструкция по поиску и разумному использованию"
Полезные расширения для Chrome

Ручное тестирование браузеров
На собеседовании вам могут задать вопрос: почему не стоит дублировать тестирование на Chrome и Opera? И вы должны вспомнить о такой вещи, как движок, на котором написан браузер. В зависимости от него отрисовывается графика (хотя это и не всегда так работает, так что воспринимайте данную информацию под звездочкой). Для визуального восприятия информации предлагаю к прочтению статью на тему отрисовки элементов на разных движках.

Работа с devTools для автоматизаторов
Советую почитать, как использовать devTools при тестировании UI с помощью Selenide.

#инструменты #автоматизация #практика #web
👍18❤‍🔥32
🖇Микросервис vs монолит📎

Что такое монолит и микросервис, в чем их разница и как тестировать микросервисную архитектуру?

Монолит и микросервис

Монолитная архитектура
Подход при создании приложения, когда система строится как единый модуль: все части системы (модули, UI, данные) выступают как единый сервис
При монолитной архитектуре система обычно состоит из 3 блоков: пользовательский интерфейс, хранилище данных и серверная часть. Серверная часть обрабатывает запросы, выполняет бизнес-логику, работает с БД, заполняет HTML-страницы. Любое изменение в системе приводит к обновлению версии серверной части приложения.

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

- Подробно о микросервисе
- Что такое микросервисы: особенности архитектуры, примеры использования, инструменты
- О микросервисной архитектуре

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

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

Сравнительный анализ микросервиса и монолита
Типичные проблемы монолита и как микросервис помогает от них избавиться (и еще больше минусов и плюсов тут)
Плюсы и минусы монолит и микросервисы (ну хоть где-то написала плюсы монолита, а не только минусы)

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

Подробнее можно почитать тут:
- Лучшие практики тестирования микросервисов
- Тестирование микросервисов, руководство для новичков
- Как тестировать интеграции, что это такое и в чем сложности
- Тестируем микросервисную архитектуру
- Стратегии тестирования микросервисов
- Контрактное тестирование
- Введение в тестирование контрактов 1, 2 и 3 (также есть часть 4, 5 и 6, но там больше про автоматизацию)

Что можно почитать про архитектуру приложений в целом
Нетривиальная статья про архитектуру приложений: что такое монолит и микросервисы, оркестрация и хореография, немного про SOAP, REST и GRPS

#web
26🔥6
🌅Как писать код красивым и понятным?🌇

Когда мы пишем код для автотестов, не стоит забывать, что это все так же остается кодом. И к коду есть свои требования: понятность, читаемость, удобство его доработки. Поэтому приходится напрягаться и думать “а как писать код лучше?”

Что нужно для создания идеального (или хотя бы близкого к этому) кода:
- соблюдать основные принципы разработки SOLID, KISS, DRY, YAGNI и другие, особенно советую погрузиться в SOLID(и, например, разобрать в нем с помощью картинок). Также разобраться в этой концепции вам может помочь конкретные примеры на java и на python
- помнить о концепции ООП
- применять шаблоны проектирования и паттерны автоматизации

Также рекомендую отличную статья с советами, как написать идеальный автотест (аж 25 принципов!) : собраны основные требования к коду именно автотеста (прямо рекомендую читать статью и анализировать ваш код)

Рефакторинг кода
Если все-таки вышло, что вы попали в ловушку плохо написанного кода (с кем такого не было?), то пора заняться рефакторингом.
Отличный цикл статей про рефакторинг, как лечиться от проблем в вашем коде и какие есть best practice для этого (заходить нужно под VPN).


Еще полезные советы о коде и около него:
- писать хороший README (или хотя бы в целом писать): это прежде всего забота о других людях, им будет понятно, как запускать тесты, как в целом логика тестов, какие программы нужны для запуска, где и как публикуются отчеты (а еще круче написать скрипт или докер файл, которые позволит все установить для запуска ваших тестов)
- писать понятную историю коммитов: сквошить, черри-пикать, ребейзить и всеми другими способами делать историю коммитов читаемой, понятной и не перегруженной
- не забывать писать информативные переменные/классы/названия тестов (очень больной пункт для меня, думаю над названиями по миллион лет): поможет не заглядывая в код понять, что там происходит, зачем это предназначено и как это можно переиспользовать.

#автоматизация #программирование
19🔥2👍1
Чек-лист тем для собеседования

Итак, как найти работу мечты? Этот секрет я вам не раскрою (потому что ответ у каждого свой), а вот подготовиться к собеседованию помочь могу.

Поэтому держите мою новую “разработку”: чек-лист “Темы для собеседований”

Как им пользовать:
- открыть ссылку
- скопировать чек-лист себе в notion
- подготавливаться к собеседованию, изучая/вспоминая информацию, и ставить done тем темам, которые уже повторил

И последнее не менее важное: верить в себя и успешно пройти собеседование.

А еще круто дорабатывать чек-лист под себя и добавлять темы, которые у вас спрашивали на собеседовании!

Также чек-лист будет полезен для собеседующих в качестве шпаргалки, что можно/нужно спросить на собеседовании: все ли темы вы спросили, а также определиться с тем, какие вещи конкретны важны вам и под вашу вакансию (благодаря тому, что список обширный и перечисляет основной список).

Пошучу: не является публичной офертой

Но очень надеюсь, что это будет вам полезно!
🔥54👍42
Вопросы на основе опыта

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

Несмотря на то, что собеседования становятся легче из-за возможности опереться на ваш опыт, появляется ещё один блок вопросов — вопросы, которые требуют объединения вашего опыта и знаний для решения какой-то реальной практической задачи. Часто этот блок направлен на то, чтобы определить, как вы мыслите, решаете сложные задачи и как можете применить полученный опыт на практике.

В помощь приведу список популярных вопросов из данной тематики:
- Вы пришли на проект на начальной стадии. Как вы будете определять с какой тестовой документации начинать?
- Как тестировать продукт с большим количеством фичей, задач и сложным функционалом
- У нас три часа до окончания рабочего дня, а завтра с утра релиз. Что будешь делать?
- Что делать, если вам не хватает ресурса для выполнения задач в срок?
- Как убедиться, что тесты покрывают все необходимые сценарии?
- Что будете делать, если столкнетесь со сложной технической проблемой? А если с неизвестным инструментом?
- Разработчик прислал вам обратно баг с комментарием “Не баг”. Но вы уверены, что это баг; Что вы будете делать?
- Кто принимает решение, что все проверено и можно выпускаться?
- Как вы влияете на скорость исправления багов?
- Были ли конфликтные ситуации на предыдущем месте работы? Как вы выходили из них?
- Почему пропущен опыт в резюме?
- Почему уходите с предыдущего места работы?

Часто такие вопросы лучше предварительно обдумать и порассуждать, какой на них дать ответ. Для помощи написала пост, как на такие вопросы отвечала бы я.
Почитать можно тут.

#собеседование
29🔥18👍7
Зачем нужен CI/CD (ручному тестировщику и не только)

CI/CD - методология разработки, которая позволяет автоматизировать процесс сборки, тестирования и развертывания приложений. Простыми словами - это автоматическая сборка вашего ПО с уже настроенными этапами запуска, тестирования (автотесты) и разворачиванием на сервере (например, где уже вы будете тестировать руками).

Иногда вы можете задаваться вопросом: но я тестирую руками/пишу автотесты, как мне это может помочь?

Вот несколько пунктов, чем вам поможет CI/CD:

➡️ автоматически без дополнительных действий со стороны разработчика получать новый функционал и разворачивать себе стенд одной кнопкой: без настроенной сборки приложения надо настраивать окружение, прописывать скрипты и прочее. А если CI/CD настроено, то можно просто нажать кнопку и вы уже готовы тестировать.
➡️ не получать неработающую сборку: не знаю, как у вас, а у меня бывали в работе задачи, которые просто приводили к падению при их запуске. И каждый раз нужно дойти в логи, узнать, это у меня не работает или разработчик отдал сырую задачу, идти к разработчику, ну и так далее. А тут с настроенным CI/CD (и хорошими тестами) задача просто бы не развернулась, и я не тратила бы время на выяснение причин.
➡️ автоматический прогонять автотесты, регресс и составлять отчеты: прогон автотестов на дальней дистанции позволит вам узнать, какой функционал чаще всего приходит в негодность и чему нужно уделить особое внимание. А еще вам просто не нужно будет ругами прогонять тесты и занимать мощности своего компьютера.

Чем CI/CD поможет именно команде:

➡️ настроить сбор метрик на проекте и, благодаря этому, мониторить их: например, собирать данные о производительности приложения: среднее время ответа, количество запросов к приложению и т.д.
➡️ создать нормальное количество unit-тестов со стороны разработчика: при настройке CI/CD можно настроить несколько этапов, одним из которых может быть количество покрытых тестами функциональности. Таким образом непокрытый (и хотя бы частично непротестированный!) функционал просто не дойдет до тестировщиков (и вы не будете страдать)
➡️ уменьшить количество исправлений на код-ревью: также один из этапов quality gate - это запуск задач, которые направлены на проверку качества кода. Это поможет нам меньше возвращать функционал на этапе код ревью кода.
➡️ упростить и автоматизировать "уход" до клиента: первоначальная цель CD заключалась именно в этом: правильно настроенные quality gate позволят нам в автоматизированном режиме отдавать новый функционал нашим клиентам и таким образом сокращать время между разработкой и поставкой функциональности.

К слову, CI/CD это не панацея: у нас все еще присутствует человеческий фактор. Например, на одной работе devOps решил выключить прогон unit-тестов, благодаря чему баг, который они бы словили, успешно проник на прод. Не будьте как этот devOps.

Полезные материалы

Почитать:
📄Что такое CI/CD
📄Зачем CI/CD тестировщикам?
📄Хорошая статья про CI/CD в целом и конкретный кейс
📄Вопросы по CI/CD на собеседованиях
📄Инфраструктура и пайплайн (CI/CD) (qa bible): много полезных ссылок

Послушать/посмотреть:
🎦Лайв-кодинг: GitLab CI as Quality Gates: CI глазами тестировщика" / Александра Пшеборовская
🎶Подкаст “Вроде в проде”: 11 выпуск CI/CD для тестировщика
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥39👍1
IDOR🔐

В мое поле зрения сейчас активно попадается IDOR. Ранее я писала про тестирование безопасности (тут было интересно!). Но углубимся именно в IDOR.

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

Мне очень нравится это направление в тестировании: пытаться обойти систему и получить доступ к тому, что вам нельзя видеть (как подглядывать к кому-то в окна!).

Если хотите попробовать попрактиковаться, то рекомендую:
- проходить лабораторные работы от создателей Burp Suite (позволят вам на практике познакомиться с основными типами уязвимостей), а в помощь можете использовать эту статью
- посмотреть доклад Анны Васильевой “Поиск уязвимостей IDOR”
- поискать выступления Рамазана Рамазанова (@r0hack) (тут скорее сможете обзорно познакомиться, какие уязвимости существует)
- поискать полезное вот в этом посте

Интересные каналы на тему IDOR
- канал @r0hack
- канал Анны Васильевой
26🔥8
Как тестировать backend⁉️

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

Основные знания перечислены в статье "Что должен знать тестировщик бэкенда"
В статье "Web Testing Specific" можно глубже погрузиться в то, как теория влияет на практику тестирования веба
Изучать основную базу можно обычным поиском по интернету: хороших статей и курсов огромное количество. В помощники рекомендую bible QA и пост с полезными статьями.

2️⃣ Быть знакомым с архитектурами, которые тебе предстоит тестировать, что позволит понимать особенности и учитывать их в работе.
Особенно понимать основные архитектуры API (для просмотра статьи нужен VPN)
(самый популярный архитектурный стиль для API REST, поэтому отдельно для него выделю статью с теорией и практикой). Если не любите читать, то видео на тему архитектур (и немного дополнительной теории) можно посмотреть тут
Также важно понимать разницу монолита и микросервисов и разницу синхронного и асинхронного взаимодействия (отсюда уже выходит работа с брокерами сообщения, но пока что это опустим).

Практические знания
1️⃣ Уметь тестировать backend (и понимать основные концепции тестирования)
- знать и применять общие подходы при тестировании API
▪️Лучшие практики тестирования API
▪️Мой любимый чек-лист API тестов (с которым можно сверяться, чтобы убедиться в непропущенности основных сценариев)
▪️Этапы тестирования API, тестовые сценарии
▪️Хороший пример шаблона тест-кейсов по API и от той же авторки примеры чек-листов по API (и свежие обновления для коллекций)
- знать как тестировать конкретный вид API (не обязательно все, но точно тот, который тестируете вы)
▪️тестирование rest
▪️тестирование grpc
▪️тестирование graphQL
▪️тестирование soap [тут хороших статей не нашла🙁]
- уметь тестировать все части backend: например, рекомендую почитать про тестирование баз данных
2️⃣ Уметь использовать основные инструменты
▪️devTools
▪️инструменты тестирования API: Postman vs Insomnia vs Soap UI
▪️работать с curl
▪️уметь подключаться и работать с базами данных (например, через dbeaver)

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

#web #backend
🔥47👏32
🎄Новогодние советы для тестировщиков🎄

До Нового года осталось ровно неделя. За этот год каждый из нас вырос. И каждый из нас подводит итоги за прошедшее время. Для вас я собрала свои мысли-выводы года в этом посте.

Про созвоны
- Чтобы не отвлекаться, обсуждайте задачи, а не молчите.
- Если вы не можете обсуждать, постарайтесь занять руки делом, а голову созвоном.
- Иногда лучше 1 раз позвонить, чем 10 раз написать. А иногда лучше написать полноценное сообщение вместе неподготовленного звонка. Всегда нужночувствовать грань.

Про командную работу
- Мозговой штурм помогает решить многие проблемы, поэтому иногда групповые созвоны стоят потраченного времени (но обязательно нужно всем подготовиться и понимать тему звонка).
- Планирование правда может спасти много часов работы. Но, чтобы оно было эффективном, стоит в нем участвовать.
- Не надо забывать рассматривать задачи со стороны бизнес-фич, а не только со стороны тест-дизайна. И в этом вам может помочь вся команда (потому что помнить досконально продукт очень трудно).

Про инструкции
- Если какая-то проблема повторяется, то стоит написать на нее инструкцию.
- Если у вас есть большое общее пространство (confluence), то стоит почаще искать там полезные инструкции (и оставлять их для других).

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

Про развитие и заботу о себе
- Деньги и их количество - не всегда определяющая вещь для работы. Иногда важнее рост, который работа тебе даёт
- Надо заботиться о себе и помнить, что работа не спасет в моменты проблем со здоровьем или критических событий.
- Развитию нет предела. Ощущение «теперь-то я все поняла» обманчиво.

Про автоматизацию
- Автоматизация - это далеко не единственный путь в развитии. Есть ещё много других путей. Поэтому, если у вас не лежит душа, поищите другой путь.
- Стоит учиться сразу информативно называть переменные и методы. Это ускорит ваш рефакторинг и понимание "а что вообще тут происходит".
- Часто в автоматизации нужно думать наперед: а можно ли будет расширить этот функционал, а как он будет использоваться. Автоматизация - это программирование. И к ней нужно применять такие же правила.

И пусть следующий новый год принесет вам больше профессиональных успехов и радости🎄
Please open Telegram to view this post
VIEW IN TELEGRAM
66👍14🤓2
С Новым годом!🎄

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

А сегодня я хочу поделиться ссылкой, нежно собранной командой админов тг-каналов, на супер-полезную подборку известных и не очень каналов о тестировании https://t.me/addlist/PNmSaWa9ktw2YjRi.

Все каналы прошли экспертное ревью и получили зеленый свет🟢 - каналы живые, интересные и уникальные.

Каждый найдет в них для себя что-то полезное - и джуны, и сеньоры.

Не упускайте свой новогодний подарок и добавляйте каналы в библиотеку!
👍18🔥101