четверг, 27 февраля 2014 г.

Тестирование калькулятора. High Level Test Cases

Немножко в сторону.

Есть такая штука как "ручное протыкивание".

Как оно делается?

Тут варианты следующие:
1. Чисто ручное протыкивание "на интуиции".
2. Протыкивании на основании ТЗ и Test Case'ов.
3. Симбиоз этих двух подходов.

Я лично больше приемлю HLTC.

Почему? Потому что они являются прародителями не только "ручного протыкивания", но и "автоматических тестов".

Так вот пишет тут знакомый.

Цитирую:

"Заставил я себя HLTC соорудить:

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

HLTC1: Начало работы
HLTC1.1: При открытии программы:
HLTC1.1.1: Поле для ввода данных содержит 0
HLTC1.1.2: Все кнопки доступны(активны)

HLTC2: Ввод данных (цифр и разделителя)
HLTC2.1: Способы ввода
Убедиться, что данные можно ввести всеми способами:
HLTC2.1.1: Нажатие кнопок приложения с помощью указателя мыши
HLTC2.1.2: Ввод с основной клавиатуры
HLTC2.1.3: Ввод с дополнительной клавиатуры

HLTC2.2: Реакция системы на введённые данные:
HLTC2.2.1: Цифры
HLTC2.2.1.1: Отображаются в поле для ввода данных
HLTC2.2.1.2: Каждая следующая введённая цифра располагается справа от имеющихся
HLTC2.2.1.3: Первая введённая цифра заменяет собой умолчательный 0

HLTC2.2.2: Точка-разделитель дробной части
HLTC2.2.2.1: Отображается в поле для ввода данных точкой
HLTC2.2.2.2: Добавляется справа от цифры в поле (включая умолчательный 0)
HLTC2.2.2.3: В числе может быть только одна запятая
HLTC2.2.2.3.1: Кнопка с запятой дизейблится после первого нажатия
HLTC2.2.2.3.2: Вновь становится активной при:
HLTC2.2.2.3.2.1: Общем сбросе
HLTC2.2.2.3.2.2: Начале ввода следующего числа (после ввода операци)
HLTC2.2.2.3.3: При попытке ввода второго разделителя с клавиатуры - никак не реагируем


HLTC3: Операции

HLTC3.1: Способы ввода
Убедиться, что операции можно ввести всеми способами:
HLTC3.1.1: Нажатие кнопок приложения с помощью указателя мыши
HLTC3.1.2: Ввод с основной клавиатуры
HLTC3.1.3: Ввод с дополнительной клавиатуры

HLTC3.2: Арифметические операции (+ - * /):
HLTC3.2.1: Визуально никак не отображаются
HLTC3.2.2: Если последовательно ввести несколько операций - учитывается только последняя
HLTC3.2.3: После применения операции:
HLTC3.2.3.1: Первая введённая цифра заменяет отображаемое число
HLTC3.2.3.2: Ввод разделителя отображается как "0."

HLTC3.3: Получение результата:
HLTC3.3.1: Когда введено первое число, арифметическая операция и второе число - результат можно получить следующими способами:
HLTC3.3.1.1: Нажатием кнопки "=" в программе или на клавиатуре
HLTC3.3.1.2: Нажатием Enter с клавиатуры
HLTC3.3.1.3: Вызовом любой арифметической операции

HLTC3.4: Удаление последнего символа
HLTC3.4.1: Способы вызова:
HLTC3.4.1.1: Кнопка <-- (в нашем калькуляторе)
HLTC3.4.1.2: Клавиша клавиатуры Backspace
HLTC3.4.2: Единичное нажатие удаляет последний из введённых символов
HLTC3.4.3: При удалении последнего символа, он заменяется на 0
HLTC3.4.4: Попытки удалить 0 игнорируются
HLTC3.4.5: Не может быть применим к результату операции (вызов 
игнорируется)


HLTC3.5: Сброс
Отмена всех операций и замена текущего числа в поле на 0 производится следующими способами:
HLTC3.5.1: Кнопка "С" (в нашем калькуляторе)
HLTC3.5.2: Клавиша клавиатуры Esc

HLTC4: Специальные тесты
HLTC4.1: Арифметические операции с результатом
Когда в поле выведен результат предыдущей операции, с ним можно выполнить любое арифметическое действие.
Для этого нужно:
HLTC4.1.1: Если результат был выведен кнопками Enter или "=":
1. Нажать кнопку нужной операции
2. Ввести число
3. Любым способом вызвать результат

HLTC4.1.2: Если результат был выведен кнопкой арифметической операции:
1. Ввести число
2. Любым способом вызвать результат


HLTC4.2: Деление на 0
При попытке деления на 0, в поле выводится текст: "Значение не определено".


HLTC5: Завершение работы
HLTC5.1: Окно закрывается стандартными средствами ОС:
HLTC5.1.1: Крестик в правом верхнем углу
HLTC5.1.2: Горячие клавиши Alt+F4
HLTC5.2: С закрытием операции, из памяти должен выгрузиться процесс 

AL_calc.exe

Если решишь продолжить с калькулятором, может и пригодится :-)"

Я думаю, что со временем я разовью эту тему.

4 комментария:

  1. Спасибо! Не знал с чего начать )

    ОтветитьУдалить
  2. Спасибо Вам большое за статью и весь вложенный в нее труд!

    ОтветитьУдалить