среда, 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). Отсутствие найденных дефектов при тестировании не всегда означает готовность продукта к релизу. Система должна быть удобна пользователю в использовании и удовлетворять его ожиданиям и потребностям.

Первый тест: тестирование зубочисток

Выкладываю ссылку на первый свой тест, который написал его ещё до прочтения книги Романа Савина. Основывался на просмотренном видео с курса тестировщика (Первый уровень) и статьях, которые прочитал к тому моменту. Выбрал простой бытовой предмет и расписал всё по этапам. Прошу писать критику в комментариях под постом.

Тестирование зубочисток

p.s.

Тест кейс Z 

Источники знаний

На данный момент прочитал книгу Романа Савина "Тестирование Дот Ком".

Также прочитал ряд статей в сети и смотрел различные видео по возникающим в процессе обучения вопросам.

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

  1. Конечно Хабр. В частности замечательная, на мой взгляд статья для новичка в тестировании: Фундаментальная теория тестирования
  2. При различных запросах поисковик частенько выдавал ссылку на Форум тестировщиков, где можно почерпнуть много полезной информации.
  3. В процессе серфинга по сети наткнулся на интересный блог: Ольга Назина (Киселева), где объясняются темы простым языком с примерами.
Естественно в процессе изучения тестирования встречался с незнакомыми, непонятными мне терминами, и в поисках объяснений провёл много часов погружаясь в чтение различных статей.

Есть ещё один источник обучения: видео с курсов тестировщика, пока просмотрел первый уровень.

Отдельно прокомментирую книгу Романа Савина. Её много где рекомендуют, особенно для новичков. В книге много конкретики, примеров, понравилось что есть примеры оформления тест-кейсов и прочего. При этом стилистика подачи материала своеобразная, со вставками шуток юмора, местами видимо авторского. Меня это порой только сбивало с темпа и логики повествования. Перечитывать я её вряд ли буду, тем более что сейчас достаточно много материала есть в свободном доступе и есть из чего выбрать. Но нашел довольно хороший сокращенный вариант здесь: Выдержки из книги Романа Савина Тестирование DOT COM Сюда пожалуй можно периодически заглядывать, чтобы вспомнить суть предмета. 

Upd: К сожалению страничка с сокращенным содержанием книги Р.Савина пропала. Придется самому делать сокращенный вариант. Выложу отдельным постом. 

Приветствие и вступительное слово

Добрый день.

Цель данного блога – сообщить миру и потенциальному работодателю, что я намерен работать тестировщиком. Пусть возьмут меня работать.

Здесь буду описывать свой текущий опыт, свои знания, процесс обучения.

Основная информация:

Родился 10 октября 1986, т.е. в 2021 году исполнится 35 лет.

Порядка 10 лет проработал в продажах: b2c, b2b. По большей части в сфере телекоммуникаций.

Подробнее об опыте работы на hh.ru: hh.ru/resume/dmitrybvita

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