Что такое Баг (Bug) в тестировании ПО?
9 сентября 1947 года ученые Гарвардского университета, которые тестировали вычислительную машину Mark || нашли застрявшего мотылька между контактами электромеханического реле, который произвел к остановке машины. Баг в переводе с английского — это мотылек, жук, насекомое. С тех пор любые неполадки в вычислительной технике называют Багом

Так тестовый сценарий выглядит в системе для хранения кейсов TestRail:

Можно написать такие Тест Кейсы:
Чтобы легче было понять давайте предположим что есть простой скрипт или программа, которая предлагает нам ввести возраст человека в текстовое поле вместимостью в 2 символа и что ниже находится кнопка для отправки данных. Результат данной программы должна быть стоимость мед страховки в зависимости от той цифры, которую мы введем. В соответствии с функциональной спецификацией все возраста разделили на четыре категории. Первая это Дети (включает от 0 до 12 лет), Вторая категория это Подростки (включает от 13 до 17 лет), Третья категория это Взрослые (включает от 18 до 59 лет), и последняя Пятая категория это Пенсионеры (включает от 60 до 99 лет). В зависимости от категории к которой относится человек, будет вычисляться стоимость мед страховки:
В данном случае все входные данные мы можем разделить на 4 эквивалентных класса. Как изображено на изображении ниже.

Вопрос: Сколько же тест кейсов нам нужно для проверки всех эквивалентных классов и какие именно?
Читать дальше →

Основная цель тестирования — предоставить информацию заказчику о качестве тестируемого продукта.
Для чего нужно тестировать?
Основная причина это снижения рисков, связанных с выпуском продукта который неправильно функционирует, не соответствует требованиям или с явными дефектами в коде. Чем раньше в жизненном цикле ПО будут найдены баги, тем дешевле их стоимость исправления. Поэтому тестирование является очень важным процессом в жизненном цикле ПО.

Баг
Багом можно назвать:- несоответствие требованиям или спецификации
- сбой программы, приводящий к ее завершению
- зависание программы (программой невозможно пользоваться)
- выдача любих программных и системных ошибок
- ошибки дизайна, программного интерфейса, который мешает нормальной работе
- мелкие неточности и текстовые ошибки
Что такое Тест кейс (Test Case)?
Тест кейс это что?
Что такое Тест кейс (тестовый случай) — это самая маленькая часть тест документации, это ситуация которая проверяет конкретно взятое условие из требований. Одно условие может проверятся несколькими Тестовыми Случаями (позитивными и негативными). Набор тест кейсов объединяются в тест сьютыТак тестовый сценарий выглядит в системе для хранения кейсов TestRail:

Из каких основных полей состоят тест кейсы:
ID
В это поле записывается номер кейса или номер вместе с какой-то аббревиатурой к примему «PD_Sync_123»служит для их уникальной идентификации среди других кейсов.Summary
Cюда записывают краткое описание проблемы. Summary (описание) должно содержать ответ на вопрос что произошло и при каких условиях работает не верно.Steps
Здесь описывают шаги, для того чтобы востроизвести баг. Степы рекомендуют максимально сокращать, то есть найти кратчайший путь для воспроизведения бага и описать в степах, и очень важно чтобы они оставались максимально понятными для разработчиков.Expected Result
В этом поле описываем ожидаемый результат после хождения по шагам или возможно после конкретных шагов, что бывает реже.Pass/Fail
Поле служит для проставления статуса каждому тест кейсу. Если ожидаемый результат совпадает с реальным, то проставляем pass, в противном случае ставим fail. Возможно еще несколько статусов в зависимости от процессов и правил в IT компании
Пример Тест Кейса
Простой наглядный пример проверки успешного входа в систему Администратора при условии что его логин и пароль = 'Login' и '12345'.Можно написать такие Тест Кейсы:
ID | Summary | Steps | Expected Result | Pass/Fail |
1 | Administrator Log in (Positive) | 1. Open the login page 2. Type 'Login' in the Name field 3. Type '12345' in the Password field 4. Submit | Administrator should be logged in successfully | Passed OR Failed(Поле до стадии выполнения остается пустым или Not tested) |
2 | Administrator Log in with Incorrect password, correct username (Negative) | 1. Open the login page 2. Type 'Login' in the Name field 3. Type '11111' in the Password field 4. Submit | Administrator should NOT be logged in. «User or Login is incorrect» message is displayed | Passed OR Failed(Поле до стадии выполнения остается пустым или Not tested) |
3 | Administrator Log in with Correct password, Incorrect username (Negative) | 1. Open the login page 2. Type 'Login1' in the Name field 3. Type '12345' in the Password field 4. Submit | Administrator should NOT be logged in. «User or Login is incorrect» message is displayed | Passed OR Failed(Поле до стадии выполнения остается пустым или Not tested) |
Что такое Граничные значения (Boundaries) и Эквивалентные классы (Equivalence partitioning) в Тестировании ПО?
Эквивалентные классы
Эквивалентный класс включает в себя определенное количество каких-то значений, которые предположительно будут обрабатываться и выдавать на выходе один и тот же результат для всех представителей этого эквивалентного класса.Чтобы легче было понять давайте предположим что есть простой скрипт или программа, которая предлагает нам ввести возраст человека в текстовое поле вместимостью в 2 символа и что ниже находится кнопка для отправки данных. Результат данной программы должна быть стоимость мед страховки в зависимости от той цифры, которую мы введем. В соответствии с функциональной спецификацией все возраста разделили на четыре категории. Первая это Дети (включает от 0 до 12 лет), Вторая категория это Подростки (включает от 13 до 17 лет), Третья категория это Взрослые (включает от 18 до 59 лет), и последняя Пятая категория это Пенсионеры (включает от 60 до 99 лет). В зависимости от категории к которой относится человек, будет вычисляться стоимость мед страховки:
- Дети — 10 у.е. в месяц
- Подростки — 20 у.е. в месяц
- Взрослые — 30 у.е. в месяц
- Пенсионеры — 40 у.е. в месяц
В данном случае все входные данные мы можем разделить на 4 эквивалентных класса. Как изображено на изображении ниже.

Вопрос: Сколько же тест кейсов нам нужно для проверки всех эквивалентных классов и какие именно?
Читать дальше →
Что такое Тестирование Программного Обеспечения (Software Testing)?
Тестирование Программного Обеспечения
Если спросить у тестировщиков что такое Тестирование Программного Обеспечения, то можно услышать совершенно разные ответы. Некоторые из них покажутся вам более правильными иные — менее. Проанализировав несколько определений можно вывести какое-то общее определение.
Тестирование ПО
Тестирование ПО — это процесс анализа тестируемого продукта с применением различных видов и методик тестирования для того чтобы получить информацию о том насколько наш продукт соответствует требованиям.Основная цель тестирования — предоставить информацию заказчику о качестве тестируемого продукта.
Для чего нужно тестировать?
Основная причина это снижения рисков, связанных с выпуском продукта который неправильно функционирует, не соответствует требованиям или с явными дефектами в коде. Чем раньше в жизненном цикле ПО будут найдены баги, тем дешевле их стоимость исправления. Поэтому тестирование является очень важным процессом в жизненном цикле ПО.