Задача на классы эквивалентности

С недавних пор я - ментор. В огромной (по крайней мере так кажется сейчас) программе, состоящей из 12-ти недель, укомплектовано 12 базовых тем, без которых тестировщик не может стать настоящим профессионалом.

Function and Domain testing - одна из самых сложных и интересных базовых тем, которую нужно усвоить. Эта тема приводит в порядок мысли тестировщика, а успешное усвоение служит одним из индикаторов первого этапа зрелости.

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

Это задание (из книги "Software Testing, A Craftsman's Approach" by Paul C. Jorgensen) мне показалось интересным.

Перевод часов весной и осенью создает интересную проблему для телефонных счетов. Весной этот перевод осуществляется на один час вперед. Осенью - на один час назад, когда в три часа ночи (предполагаемые три часа) стрелки переводят на один час назад. Выглядит это приблизительно так: после 2:59:59 снова наступает 2:00:00.

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


Предусмотреть следующие допущения:
— Разговор начинается с момента поднятия трубки принимающей стороной, и заканчивается когда любая из сторон кладёт трубку.
— Продолжительность разговора (секунды) округляется в большую сторону до следующей минуты.
— Стоимость разговора = $0.05 за минуту.

Возможный пример таблицы:
Start
End
Expected result
Risk
1:59:00
2:00 (before shifting)
0.05$*1=0.05 $
System thinks that time was transferred, but in fact it was not. System bills 1 extra hour.
1:59:00
2:00:00 (after shifting)
0.05$*61=3.05 $
System thinks that time was not transferred, but in fact it was. System bills 1 hour less.
 and so on….

Share this:

0 comments:

Post a Comment