Тестирование программного обеспечения. Основы

на главную

Жанры

Тестирование программного обеспечения. Основы

Шрифт:

Захаров Виктор

Тестирование программного обеспечения. Основы

Настольная книга специалиста по тестированию

Первое издание

Бердск, 2024

Аннотация

Погрузитесь в увлекательный мир тестирования программного обеспечения вместе с книгой, которая является настоящим концентратом чистейших знаний для новичков и профессионалов! Автор делится секретами мастерства, подробно рассказывая о более 15 видах тестирования и более 20 методах проектирования тестов. И это только вершина айсберга знаний, изложенных в книге. Вы будете поражены глубиной информации и открытием знаний, о которых даже не догадывались. Книга насыщена ценнейшими советами, основанными на практическом опыте. Многочисленные примеры помогут быстрее освоить представленный в книге материал. Вооружившись знаниями из этой книги, вы будете уверенно разбираться в нюансах тестирования программного обеспечения и с лёгкостью применять знания на практике! Книга может по праву считаться настольной книгой специалиста по тестированию.

Предисловие

На момент написания данной книги я работаю в одной из крупнейших компаний на должности руководителя управления, отвечающего за качество программного обеспечения. За плечами у меня 17 лет опыта в области информационных технологий, из них 13 лет я руковожу подразделениями тестирования.

В процессе работы регулярно возникала необходимость подбора новых сотрудников. Проводя собеседования, я видел низкую квалификацию кандидатов и большие провалы в знаниях и навыках тестирования. На должность специалистов приходят плохо подготовленные кадры!

Многие проходят курсы по тестированию, которые в наше время не создаёт только ленивый. По заверениям многих учебных центров их обучающие курсы ведут сертифицированные специалисты (сертификат ISTQB [1] ). Однако огромному их количеству рано учить, им надо учиться. Это я понял, когда знакомился с программами, материалами и лекциями преподаваемых курсов. Я был разочарован качеством!

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

1

ISTQB – международная квалификационная комиссия по тестированию программного обеспечения.

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

Курс представлял собой концентрат чистейших знаний по тестированию. В ходе разработки было подготовлено и переработано множество материалов, и в процессе обучения сотрудников он постоянно совершенствовался. Мне пришла в голову мысль, что все имеющиеся у меня на руках и в голове знания и опыт необходимо передать всем желающим. Настал момент написания книги.

Сейчас вы читаете ту самую книгу, которая поможет вам постичь фундаментальные основы тестирования программного обеспечения. Написана она простым и доступным языком. Материал будет понятен даже неискушённому читателю. Книга интересна и полезна как новичкам, так и опытным специалистам – каждый найдёт для себя необходимые знания и советы!

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

История тестирования

История тестирования компьютерных программ началась в 1950-х годах, когда впервые появились компьютеры. В то время программисты [2] самостоятельно проверяли свои программы на работоспособность, чтобы убедиться, что они работают правильно. В эти годы появилось одно из определений: тестирование – это процесс проверки программы с целью демонстрации её правильной работы.

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

2

Программист – специалист, занимающийся программированием (написанием кода программы), то есть созданием компьютерных программ.

В 1960-е годы люди стремились охватить программы полностью, то есть проверять все возможные передаваемые программе данные и все варианты выполнения программ. К примеру, программа может складывать большие числа, и вместо проверки сложения нескольких чисел, пробовали все возможные варианты без исключения: 1 + 1, 1 + 2, 1 + 3… 2 + 10, 2 + 11… 1259 + 15, 1259 + 16… и так далее.

Миллионы проверок! Это оказалось нереально, поскольку существует много данных, которые необходимо вводить или передавать в программу, много вариантов обработки передаваемых данных, и на их проверку уйдут годы. Также в документах, где описано, как создавать программу, присутствовало большое количество ошибок, которые трудно было найти. Поэтому метод полной проверки отклонили и признали неработоспособным. Появился один из принципов тестирования – исчерпывающее тестирование невозможно.

До 1970-х годов проверка программы означала демонстрацию её правильной работы. Но это занимало много времени и не давало полной информации о качестве программы. Подход оказался неэффективным. В 1970-х годах произошли изменения: вместо демонстрации правильной работы программы использовали поиск существующих в ней ошибок. Удачной проверкой считалась та, с помощью которой обнаруживали ранее неизвестную ошибку. В эти годы появилось очередное определение тестирования – это процесс проверки программы с целью нахождения ошибок.

В 1980-е годы начинается формирование концепции тестирования, дошедшей до наших дней. Проверка программ включила в себя такое понятие как «предупреждение ошибок».

Предупреждение ошибок – это информирование о возможной ошибке до того, как она станет серьёзной проблемой.

Это помогает исправить ошибку прежде, чем программа попадёт к пользователям и станет критической. Одним из эффективных способов предотвращения ошибок является проектирование тестов. То есть перед тем, как проверять программу, необходимо продумать, какие проверки мы будем делать, далее зафиксировать их списком и только после этого проверять работоспособность программы по составленному списку проверок.

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

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

Книги из серии:

Без серии

Популярные книги

Я – Стрела. Трилогия

Суббота Светлана
Я - Стрела
Любовные романы:
любовно-фантастические романы
эро литература
6.82
рейтинг книги
Я – Стрела. Трилогия

Камень. Книга 4

Минин Станислав
4. Камень
Фантастика:
боевая фантастика
7.77
рейтинг книги
Камень. Книга 4

Измена. Верни мне мою жизнь

Томченко Анна
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Верни мне мою жизнь

Возвышение Меркурия. Книга 2

Кронос Александр
2. Меркурий
Фантастика:
фэнтези
5.00
рейтинг книги
Возвышение Меркурия. Книга 2

Вечная Война. Книга VI

Винокуров Юрий
6. Вечная Война
Фантастика:
боевая фантастика
рпг
7.24
рейтинг книги
Вечная Война. Книга VI

Измена. Избранная для дракона

Солт Елена
Любовные романы:
любовно-фантастические романы
3.40
рейтинг книги
Измена. Избранная для дракона

Релокант. Вестник

Ascold Flow
2. Релокант в другой мир
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Релокант. Вестник

Игрок, забравшийся на вершину (цикл 7 книг)

Михалек Дмитрий Владимирович
Игрок, забравшийся на вершину
Фантастика:
фэнтези
6.10
рейтинг книги
Игрок, забравшийся на вершину (цикл 7 книг)

#Бояръ-Аниме. Газлайтер. Том 11

Володин Григорий Григорьевич
11. История Телепата
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
#Бояръ-Аниме. Газлайтер. Том 11

Титан империи 7

Артемов Александр Александрович
7. Титан Империи
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Титан империи 7

Я – Орк. Том 5

Лисицин Евгений
5. Я — Орк
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Я – Орк. Том 5

Идеальный мир для Социопата 5

Сапфир Олег
5. Социопат
Фантастика:
боевая фантастика
рпг
5.50
рейтинг книги
Идеальный мир для Социопата 5

Болотник

Панченко Андрей Алексеевич
1. Болотник
Фантастика:
попаданцы
альтернативная история
6.50
рейтинг книги
Болотник

Сумеречный стрелок 8

Карелин Сергей Витальевич
8. Сумеречный стрелок
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Сумеречный стрелок 8