Неделя 1. Теория тестирования. Часть 1

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

Я еще не решил в каком формате буду делать отчет, так что пока буду просто скидывать сюда свои конспекты и мысли, к которым я пришел. Если есть идеи, то милости прошу в комментарии. ^_^

Как и планировалось, я начал смотреть курс Artsiom Rusau QA Life. Посмотрел я не так чтобы много в силу того, что мне не особо заходит формат, но, проведя исследования других видеороликов я понял, что, в общем то, не так уж и плохо, тем более если параллельно смотреть еще какой-нибудь источник. А таким источником мне послужила небольшая статейка на хабре "Фундаментальная теория тестирования". Так что пока я планирую продолжить слушать лекции и еще хочу параллельно проходить курс на stepik "Тестирование ПО: подготовка к сертификации ISTQB Foundation".

Забыл сказать, что я также ознакомился с курсами, которые советовали из комментариев, но пока что попробую без них.

Также большое спасибо за совет по CI/CD, я уже добавил его в источники, по которым буду изучать данный раздел.

А теперь мой конспект:

Виды информационного взаимодействия:

  • B2B (business-to-business) - одна компания продает продукт другой компании.

  • B2C (business-to-customer) - компания продает продукт конечному потребителю или частному лицу.

  • B2G (business-to-government) - компания продает продукт гос. учреждениями.

  • C2C (customer-to-customer) - частное лицо продает продукт частному лицу (например, авито).

    Тестирование - поиск несоответствия между фактическим и ожидаемым результатом.

    SDLC (Software Development Life Cycle) - жизненный цикл разработки.

    Этапы:

  • Анализ требований - отвечает на вопрос «Какие проблемы требуют решений?»

  • Планирование - отвечает на вопрос «Что мы хотим сделать?»

  • Проектирование и дизайн - отвечает на вопрос «Как мы добьемся наших целей?»

  • Разработка ПО -  регулирует процесс создания продукта.

  • Тестирование -  регулирует обеспечение качественной работы продукта.

  • Развертывание -  регулирует использование финального продукта.

Неделя 1. Теория тестирования. Часть 1 IT, QA, Тестирование, Длиннопост

Также еще можно выделить два этапа:

  • Инициация (идея) - у заказчика появилась идея и он ищет компанию, которая будет это реализовывать.

  • Вывод из эксплуатации - бизнес решает прекратить поддержку продукта.

Для чего нужно тестирование:

  • Обеспечить продукту надлежащее качество.

  • Уменьшить расходы за создание продукта (например, если не ранней стадии не найти баг, то в дальнейшем стоимость его исправления обойдется значительно дороже)

Принципы тестирования:

  • Тестирование показывает наличие дефектов (нельзя найти все баги).

  • Исчерпывающее тестирование невозможно.

  • Раннее тестирование (тестовые активности должны начинаться как можно раньше и преследовать целью экономия средств заказчика, так как чем раньше обнаружиться баг, тем меньше будет стоимость его исправления).

  • Скопление дефектов (в небольшом количестве модулей сокрыто большое количество дефектов)

  • Парадокс пестицида (если повторять те же тестовые сценарии снова и снова, в какой-то момент этот набор тестов перестанет выявлять новые дефекты).

  • Тестирование зависит от контекста (например, способ тестирования медицинской техники будет отличаться от того, которым тестируем коммерческий сайт).

  • Заблуждение об отсутствии ошибок.

Жизненный цикл тестирования:

Неделя 1. Теория тестирования. Часть 1 IT, QA, Тестирование, Длиннопост

Цели тестирования:

  • Оценка рабочих продуктов (требования, пользовательские истории, проектирование и код).

  • Все ли указанные требования выполнены.

  • Завершен ли объект тестирования и работает, как ожидают пользователи и заинтересованные лица.

  • Создание уверенности в уровне качества объекта тестирования.

  • Предотвращение и обнаружение отказов и дефектов.

  • Предоставление заинтересованным лицам достаточной информации, позволяющей им принять обоснованные решения.

  • Снижение уровня риска ненадлежащего качества программного обеспечения.

  • Соблюдение договорных, правовых или нормативных требований, или стандартов и/или проверка соответствия объекта тестирования им.

Отладка (debugging) - это деятельность разработки для нахождения, анализа и исправления таких дефектов. Последующее подтверждающее тестирование проверяет, устранены ли исправленные дефекты.

Контроль качества (quality control) - набор действий, предназначенных для оценивания качества компонента или системы.

Обеспечение качества (quality assurance) - активности, направленные на обеспечение уверенности в том, что требования к качеству будут выполнены.

Различия в QC и QA:
QC включает различную деятельность, в том числе работы по тестированию, которые поддерживают достижение соответствующего уровня качества.

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

(QC работает над продуктом, а QA работает над процессами)

Управление качеством (quality management) - скоординированные действия по руководству и контролю организации в отношении качества, которые включают в себя установление политики качества и целей качества, планирование качества, контроль качества, обеспечение качества и повышение качества.

Неделя 1. Теория тестирования. Часть 1 IT, QA, Тестирование, Длиннопост

Верификация (verification) - доказанное объективными результатами исследования подтверждение того, что определенные требования были выполнены. (Делаем ли мы продукт правильно?)

Валидация (validation) - доказанное объективными результатами исследования подтверждение того, что требования для ожидаемого конкретного исследования приложения были выполнены. (Делаем ли мы правильный продукт?)

(Валидация сконцентрирована на требовании (нужды заказчика), а валидация - на ожидании пользователя (нужды пользователя)).

Получилось конечно прям мало, так что нужно будет на следующей неделе прям хорошенечко поработать. Спасибо что дочитали. Если есть какие-то советы, пожелания и т.п., то жду вас :)