Показаны сообщения с ярлыком теория тестирования. Показать все сообщения
Показаны сообщения с ярлыком теория тестирования. Показать все сообщения

среда, 22 января 2025 г.

Бесплатный курс от Хекслет: Введение в тестирование веб-приложений

https://ru.hexlet.io/courses/web-testing-basics

Бесплатный курс от Хекслет - для новичков обязательно к просмотру

Введение в тестирование веб-приложений

Программа курса

1 Введение

Знакомимся с темой курса

2 Адаптивность страницы

Выясняем, как отображаются страницы на разных устройствах и экранах

3 Кроссбраузерность

Изучаем, как разные браузеры показывают один и тот же сайт

4 HTML/CSS

Выясняем, как сайты работают на разных браузерах и устройствах

5 Мультиязычность

Разбираемся, как создаются сайты, которые работают на разных языках

6 Скорость соединения

Изучаем, как скорость загрузки страницы влияет на приложение

7 Оптимизация загрузки

Разбираемся, как оптимизировать и увеличить скорость загрузки страницы

8 Гипертекст

Изучаем концепцию гипертекста и механизм его работы

9 Single Page Application (SPA)

Выясняем, как SPA-приложения работают без обновления всей страницы

10 Формы

Изучаем работу форм и валидацию, а также распространенные ошибки

11 CRUD

Знакомимся с CRUD-операциями — Create, Read, Update, Delete

12 Уязвимости на странице

Изучаем XSS — самую частую уязвимость на веб-странице

13 Протокол HTTPS и передача данных по сети

Изучаем, что такое HTTPS, и как происходит атака Man-in-the-middle

14 Сессии

Знакомимся с механизмом сохранения состояния между HTTP-запросами

15 Виды тестирования

Знакомимся с функциональным и UI-тестированием

16 Самостоятельная работа

Дополнительные задания, которые позволяют закрепить полученную теорию

17 Дополнительные материалы

Статьи и видео, подобранные командой Хекслета. Помогут глубже погрузиться в тему курса

воскресенье, 11 февраля 2024 г.

Определение тестирования

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

пятница, 2 июня 2023 г.

Виды тестирования

Позитив - ввод валидных значений

Негатив - ввод не валидных значений

Позитив - тестирование по требованиям 

Негатив - тестирование не по требованиям

??? - ввод не валидных значений, описанных в требованиях

Позитив - объект делает то, что должен делать

Негатив - объект не делает того, что не должен делать

Позитив - объект выполняет свою функцию

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

четверг, 1 июня 2023 г.

Техники тест-дизайна

Объединение теории по теме

Техники тест-дизайна - целью является максимальное покрытие с минимальным количеством тестов.

Методы:

Статические – без запуска кода (анализ кода, требований).

Динамические – запуск ПО.

Далее рассматриваются техники обеспечения качества, которые поделены на две группы соответственно: статические и динамические

понедельник, 21 ноября 2022 г.

Техники тест-дизайна. Методы тестирования "черного ящика"

По материалам ранее изученной информации и по переводу книги Ли Копланда “A Practitioner's Guide to Software Test Design”. Автор перевода:​ Уфимцева Галина

Анализ классов эквивалентности
Анализ граничных значений
Доменное тестирование
Таблицы принятия решений
Состояний и переходов
Попарное тестирование

пятница, 2 сентября 2022 г.

Курс младшего тестировщика (на основе краткого курса тестирования). Тема 1.Введение в профессию

Тема 1.Введение в профессию

Что изучить:
  1. Основные знания и умения тестировщика:
  2. Вводная
  3. Таблица знаний и умений тестировщика
  4. ФТ
  5. Нефункциональное тестирование
  6. Багтрекинг
Узнать:
  1. Что такое тестирование?
    • Цели тестирования
    • Этапы тестирования
    • Этика
  2. Градация тестировщиков в компании
  3. Какие виды тестирования бывают?
  4. Разницу между функциональным тестированием и нефункциональным
  5. Заведение дефектов в баг-трекере
    • локализация дефекта
    • Priority/Severity дефекта
    • жизненный цикл дефекта

четверг, 9 июня 2022 г.

Тестирование. 2-ой уровень

Вводная от себя

К сожалению информация во втором уровне оказалась крайне не последовательная, слабо структурированная и местами вообще непонятная. Не объясняются базовые понятия, которые заложены в названиях глав (уроков).
Поэтому придется искать дополнительную информацию и добавлять её к материалу.

Тест-анализ. Исследование ПО.

Материалы курса 2-го уровня.

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


Анализ системы помогает изучить систему, основывается на изучении составных частей системы. 

вторник, 31 мая 2022 г.

Тестирование. 1-ый уровень

Этот пост тесно связан с этим https://dmitrybvita.blogspot.com/2021/07/blog-post_83.html 

Тестирование

Тест анализ -> тест дизайн -> тестирование


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

воскресенье, 21 ноября 2021 г.

Книга Станислава Куликова "Тестирование программного обеспечения Базовый курс"

Я таки осилил эту книгу.

Кратко озвучу своё мнение, а потом сделаю краткое содержание этой книги, т.к. не нашел оного.

Это вторая книга по тестированию, которую я прочитал.

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

Прежде чем читать его книгу очень рекомендую заглянуть сюда. Здесь идёт общение автора с читателями и обсуждение книги. И разбирают довольно подробно вопрос: "А для кого эта книга написана?"

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

понедельник, 4 октября 2021 г.

Выдержки из курса: "Введение в функциональное тестирование"

Качество – способность программы делать то, что ждет от неё пользователь.

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

Ошибка – действие человека, которое приводит к неправильному результату.

Дефект (fault) – возможная причина отказа. Изъян в компоненте или системе.

Верификация – проверка, что делается всё правильно.

Валидация – проверка, что делается что нужно.

Жизненный цикл ПО: 

  • Концепция
  • Описание требований
  • Дизайн
  • Реализация
  • Тестирование
  • Установка и Наладка
  • Эксплуатация и поддержка

Методологии разработки программного обеспечения:

  • Модель «водопад»
  • V-образная модель
  • Инкрементальная модель
  • Спиральная модель
  • Гибкая модель
  • Итеративная

Планирование тестирования. Стадии тестирования

Закончил таки курс "Введение в функциональное тестирование". Довольно нудный получился курс лекций, который базируется на ISTQB.

Выдержки из последней лекции.

Планирование тестирования. Стадии тестирования
Стадии тестирования

"Тестирование начинается не раньше появления первой сформированной документации." - довольно спорное утверждение. Т.к. существуют проекты без документации. Это видимо для новых проектов или для сферических теоретиков в вакууме.

воскресенье, 19 сентября 2021 г.

Тест-дизайн

 В рамках изучения курса "Функциональное тестирование" подробно рассматривалась тема "Тест-дизайн". Довольно объемная тема оказалась.

 Хотя весь курс, как мне кажется, не дает понимания "ФТ", он скорее является обзорным по основам тестирования и какие-то моменты освещаются чуть подробнее. Плюс за основу взяты стандарты ISTQB.

Итак,

Тест дизайн - срез по курсу:

Тест-дизайн – этап тестирования, включающий в себя разработку тестирования (Test development): проектировка и создание тест-кейсов.

Методики обеспечения качества:

Статические – без запуска кода (анализ кода, требований).

Динамические – запуск ПО.

Далее рассматриваются техники обеспечения качества, которые поделены на две группы соответственно: статические и динамические

вторник, 3 августа 2021 г.

Дефект

Дефект (недочет, помеха) – изъян в компоненте или системе, может привести к отказу компонента или системы. Обнаруживается во время тестирования

Ошибка (просчет) – в последствии действия или бездействия человека.

При обнаружении дефекта необходимо: наиболее полно описать действия, которые привели к нему; проверить проявляется ли дефект на других типах данных.

Дефекты:
• функциональности
• эргономики модуля или бизнес-процесса
• документирования
• производительности
• локализации
• совместимости
• безопасности

Критичность:
• максимальная – невозможно выполнить основные бизнес сценарии
• высокая – ошибки при выполнении ключевой функциональности
• нормальная – ошибки работы вторичного функционала, не жизненно важные функции
• низкая – не влияют на функциональность (дизайн, верстка, грамматические)

Приоритет:
• блокирующая – дальнейшая работа над продуктом заблокирована, пока не будут исправлены ошибки.
• максимальная – связанные с главными бизнес-процессами или ошибки, которые понесут урон репутации компании.
• высокая – мешают разработке и пользованию продукта, но не являются критичными
• нормальная – не несут серьезных потерь для бизнеса
• низкая – исправляются в последнюю очередь

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

понедельник, 2 августа 2021 г.

Требования

Бизнес требования (БТ)
Функциональные требования (ФТ)
Нефункциональные требования (НФТ)
Тестовые требования (ТТ)

Если я правильно понял то:
БТ - определяют суть продукта, для чего он, т.е. определяет цель его создания.
ФТ - соответственно определяет функции продукта, что он должен делать.
НФТ - определяет как он должен выполнять ФТ. + удобство, надежность, безопасность и пр. т.п.
ТТ - конкретные действия и ожидаемый результат. То что необходимо проверить.

Прошу писать критику и своё мнение в комментариях.

среда, 21 июля 2021 г.

Принципы тестирования по Майерсу

1. Необходимая часть тестового сценария – определение ожидаемого результата

 Описание предполагаемых значений выходных данных или результатов должно быть необходимой частью тестового набора.

2. Программист должен избегать тестирования собственных программ

 Следует избегать тестирования программы ее автором.

3. Вдумчиво изучайте результаты каждого теста

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

4. Тестовые сценарии должны разрабатываться для некорректных входных данных, так же как и для правильных и ожидаемых

 Тесты для неправильных и непредусмотренных входных данных следует разрабатывать также тщательно, как для правильных и предусмотренных.

5. Определение, что программа делает то, что должна – лишь половина дела. Другая половина – проверка, что программа не делает того, чего не должна

 Необходимо проверять не только, делает ли программа то, для чего она предназначена, но и ни делает ли она то, что не должна делать.

6. Избегайте исключения тестовых сценариев

 Не следует выбрасывать тесты, даже если программа уже не нужна.

7. Не планируйте тесты в предположении, что ошибки не будут найдены

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

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

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

9. Тестирование – исключительно творческая и интеллектуальная задача.

среда, 14 июля 2021 г.

Обобщил текущие знания

Обобщил текущие знания на основе источников, указанных в этом посте

Обеспечение качества (QA — Quality Assurance)

Контроль качества (QC — Quality Control)

Тестирование (Testing)


Цель тестировщика
– проверить ПО на соответствие требованиям, находить критические ошибки.

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

Принцип 1 — Тестирование демонстрирует наличие дефектов (Testing shows presence of defects).

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

Принцип 2 — Исчерпывающее тестирование невозможно (Exhaustive testing is impossible).

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

Принцип 3 — Раннее тестирование (Early testing).

Следует начинать тестирование на ранних стадиях жизненного цикла разработки ПО, чтобы найти дефекты как можно раньше.

Принцип 4 — Скопление дефектов (Defects clustering).

Большая часть дефектов находится в ограниченном количестве модулей.

Принцип 5 — Парадокс пестицида (Pesticide paradox).

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

Принцип 6 — Тестирование зависит от контекста (Testing is context depending). Тестирование проводится по-разному в зависимости от контекста. Например, программное обеспечение, в котором критически важна безопасность, тестируется иначе, чем новостной портал.

Принцип 7 — Заблуждение об отсутствии ошибок (Absence-of-errors fallacy). Отсутствие найденных дефектов при тестировании не всегда означает готовность продукта к релизу. Система должна быть удобна пользователю в использовании и удовлетворять его ожиданиям и потребностям.