Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Upcoming SlideShare
Александр Александров -- Надёжный тест-дизайн (мастер-класс)
Next

16

Share

Test design techniques

Related Books

Free with a 30 day trial from Scribd

See all

Test design techniques

  1. 1. Основные техники тест дизайна
  2. 2.  Техники «черного ящика» Техники «белого ящика» Техники, основанные на опытетестировщика
  3. 3. Основаны на анализе документацииНе принимают во внимание внутреннююструктуру системыВводныеТестируемыйэлементРезультаты
  4. 4.  Основаны на анализе внутренней структуры Направлены непосредственно на код Легко поддаются измерению тестовогопокрытияА > 2YesNo
  5. 5.  Используют знания и опыт тестирующего:◦ программиста;◦ тестировщика;◦ пользователя Важны знания:◦ системы;◦ предметной области;◦ наиболее вероятных ошибок...
  6. 6.  Классы эквивалентности Граничные условия Таблица возможных решений Тестирование переходов междусостояниями Пользовательские сценарии
  7. 7. Предполагает разделение тестируемыхданных на группы (классы) на основе каких-либо общих характеристик: Одинаковые способы обработки Одинаковое поведение Время: до / после / в течение Корректные / некорректные данные В пределах лимита / превышает
  8. 8.  Важно протестировать как минимум однозначение из каждого класса Может работать с данными полученными изразных источников (введенными вручную,сгенерированными системой, переданными издругой системы) Используется для разных уровней тестирования Применяется для тестирования как вводных, таки ожидаемых результатов Важно тестирование как «допустимых», так и«недопустимых» классов эквивалентности
  9. 9. Не замужем / неженатЗамужем / женатРазведена /разведенВдова /вдовецГражданскийбракСемейное положение
  10. 10. Не призываетсяПризываетсяНе призывается17 18 23 25 26Призыв в армию
  11. 11. Задание 1: Определите классыэквивалентности для операции снятияналичности в банкомате: Минимальная купюра – 10 грн. Максимальная сумма разового снятия – 5000 грн.Задание 2: Определите классыэквивалентности по уровню образования дляиспользования в системе анкетирования
  12. 12. Граничными являются минимальные имаксимальные значения отдельного классаэквивалентностиОбладают высокой вероятностью ошибкиТестирование граничных условий считаетсярасширенным тестированием классовэквивалентности
  13. 13.  Может применятся на различных уровняхтестирования Достаточно легко определяются, при этомочень эффективны Должен создаваться отдельный тест-кейсна каждое граничное условие Необходимо тестировать граничныеусловия как «допустимых», так и«недопустимых» классов эквивалентности
  14. 14. Не призываетсяПризываетсяНе призывается17 18 23 25 26Призыв в армию
  15. 15. Задание 3: Определите граничные условиядля классов эквивалентности из Задания 1: Минимальная купюра – 10 грн. Максимальная сумма разового снятия – 5000 грн.Задание 4: Определите граничные условиядля классов эквивалентности из Задания 2(уровень образования).
  16. 16. Задание 5: Определите граничные условиядля системы учета выплаты больничных: Общий стаж работы до 1 года – 50% оклада; Общий стаж работы до 5 лет – 70% оклада; Общий стаж работы до 8 лет – 80% оклада; Общий стаж работы свыше 8 лет – 100% оклада.
  17. 17. ВариантыУсловия 1 2 3 4 5 6 7 8 9 10 11 12Возраст <18 Да Да Да Да Нет Нет Нет Нет Нет Нет Нет Нет18-25 Нет Нет Нет Нет Да Да Да Да Нет Нет Нет Нет>=25 Нет Нет Нет Нет Нет Нет Нет Нет Да Да Да ДаСостояниездоровья Здоров ЗдоровНездоровНездоров Здоров ЗдоровНездоровНездоров Здоров ЗдоровНездоровНездоровОтсрочка Нет Да Нет Да Нет Да Нет Да Нет Да Нет ДаДействия(повестка) Нет Нет Нет Нет Да Нет Нет Нет Нет Нет Нет НетРассылка повестки в армию• Каждое условие предполагает Да / Нет ответ• Каждый вариант содержит различную комбинациюответов, приводящую к разным действиямОтдельный тест-кейс необходим для каждого столбика таблицы!
  18. 18.  Используется, если действия системызависят от принятия логических решений Основана на анализе технического задания Применяется на любых уровняхтестирования Техника эффективна для определениякомбинаций, которые в других случаяхмогут быть не замечены
  19. 19. Задание 6: Создайте таблицу возможныхрешений для тестирования системы продажибилетовВ кинотеатре предоставляется скидка вразмере 50% на сеансы в таких случаях: На утренний сеанс в любой день; На все сеансы в день зрителя; Льготным категориям зрителей(студенты, пенсионеры, инвалиды) при условиипредъявления удостоверения.Скидки не суммируются!
  20. 20. ВариантыУсловия1 2 3 4 5 6 7 8Утренний сеанс Да Да Да Нет Нет Нет Да НетДень зрителя Да Да Нет Нет Нет Да Нет ДаЛьготнаякатегориязрителяДа Нет Нет Нет Да Да Да ДаДействия Скидка Скидка Скидка НетскидкиСкидка Скидка Скидка СкидкаПредоставление скидки в кинотеатре
  21. 21. Задание 7: Создайте таблицу возможных решенийдля тестирования системы лояльностиавиаперевозчика.Система лояльности авиаперевозчика предполагаетналичие у пассажиров одной из карт клуба:голубой, серебряной и золотой. Голубая карта дает возможность первоочередной посадки; Серебряная карта дает возможность первоочереднойпосадки и повышение класса за 20 долларов США; Золотая карта дает возможность первоочереднойпосадки, повышение класса бесплатно и доступ в VIP-зал; Доступ в VIP-зал также предоставляется держателямголубой или серебряной карты при наличии более 10 000бонусных баллов.
  22. 22. ВариантыУсловия1 2 3 4 5 6Голубая карта Да Да Нет Нет Нет НетСеребряная карта Нет Нет Да Да Нет НетЗолотая карта Нет Нет Нет Нет Да Да> 10000 бонусов Нет Да Нет Да Нет ДаПервоочередная посадка Да Да Да Да Да ДаПовышение класса за 20долларовНет Нет Да Да Нет НетБесплатное повышениеклассаНет Нет Нет Нет Да ДаДоступ в VIP-зал Нет Да Нет Да Да Да
  23. 23. Pairwise testingТехника формирования наборов тестовыхданных, при которой каждое тестируемое значениекаждого из проверяемых параметров хотя бы разсочетается с каждым из тестируемых значений всехостальных проверяемых параметров
  24. 24. ВариантыУсловия 1 2 3 4 5 6 7 8 9 10 11 12Возраст <18 Да Да Да Да Нет Нет Нет Нет Нет Нет Нет Нет18-25 Нет Нет Нет Нет Да Да Да Да Нет Нет Нет Нет>=25 Нет Нет Нет Нет Нет Нет Нет Нет Да Да Да ДаСостояниездоровья Здоров ЗдоровНездоровНездоров Здоров ЗдоровНездоровНездоров Здоров ЗдоровНездоровНездоровОтсрочка Нет Да Нет Да Нет Да Нет Да Нет Да Нет ДаДействия(повестка) Нет Нет Нет Нет Да Нет Нет Нет Нет Нет Нет НетРассылка повестки в армию• Каждое значение тестируемого параметра хотя бы раз сочетается скаждым из значений всех остальных параметров• Не забываем о различных результирующих действиях: каждое извозможных действий должно выполняться хотя бы разОтдельный тест-кейс необходим для каждого столбика таблицы!
  25. 25. Система налогообложения учитываетследующие параметры при расчеты суммыналога: Пол (мужской / женский); Возраст (моложе 25 лет, в возрасте от 25 до60 лет, старше 60 лет); Наличие / отсутствие детей.Создайте наборы тестовых данных сиспользованием техники попарноготестирования.
  26. 26. ВариантыУсловия1 2 3 4 5 6Возраст <25Да Да Нет Нет Нет Нет25-60Нет Нет Да Да Нет Нет>=60Нет Нет Нет Нет Да ДаПолМ Ж М Ж М ЖДетиЕсть Нет Нет Есть Есть НетНаборы тестовых данных для тестированиясистемы налогообложения
  27. 27. Система может «реагировать» по-разному взависимости от: Действий, выполненых пользователем (вводных); Состояния, в котором она находила передвыполнением действий (или череды состояний)Состояние 1Состояние 2ВводныеДействия
  28. 28. Состояния должны быть: обособленными определяемыми конечными по количествуСистема анализируется с точки зрения: Возможности определения состояний Переходов между состояниями Условий (вводных) Действий (результатов)
  29. 29.  Используется для тестированиявстраиваемого ПО (сигнализация) Удобно для тестирование очередностидействий; Эффективно для тестированиянекорректных данных / действий; Может использоваться для тестированиядиалоговых окон.
  30. 30. Сигнализация для автомобиля, защищенная кодомПравильный кодНЕправильныйкодНЕправильныйкодОткрытьдверьСигнализациявключенаСигнализацияотключенаСигнализациясработалаНЕправильныйкодПравильныйкод
  31. 31. Вводные / ДействияПервоначальноесостояниеПравильный код Неправильный код Открыть дверьСигнализация отключенаСигнализациявключенаСигнализацияотключена-Сигнализация включенаСигнализацияотключенаСигнализациявключенаСигнализациясработалаСигнализация сработалаСигнализацияотключенаСигнализациясработала-Сигнализация для автомобиля, защищенная кодом
  32. 32. Нулевой уровень - 0-switch coverage:тестирование перехода из одного состояния вдругое: Сигнализация отключена ⇒ сигнализация включена Сигнализация включена ⇒ сигнализация сработалаПервый уровень – 1-switch coverage:тестирование переходов парами («транзитом»): Сигнализация отключена ⇒ сигнализация включена ⇒сигнализация сработала Сигнализация включена ⇒ сигнализация сработала ⇒сигнализация отключена
  33. 33. Задание 8: Создайте схему / таблицуперехода состояний кофе-машины.В нашей кофе-машине возможны трисостояния: Ожидание; Приготовление напитка; Требование пополнение ингридиентов.Имеется только одна кнопка Старт/Стоп ирезервуары для пополнения запасов воды /кофе.
  34. 34. Вводные / ДействияПервоначальное состояние Старт / Стоп Наполнить резервуарыОжидание Готовит напиток ОжиданиеГотовит напиток Ожидание -Требуется пополнение Требуется пополнение ОжиданиеТаблица переходов между состояниями кофе-машины
  35. 35. Задание 9: Создайте схему / таблицуперехода состояний мобильного телефонаиз режима ожидания в режим совершениязвонка (требуется введение кода). Позавершении звонка телефон возвращается врежим ожидания. В случае введенияневерного кода три раза подряд телефонблокируется.
  36. 36.  Описывают поведение системы с точкизрения пользователя Действия тестировщика имеют реальноезначение для пользователя Могут иметь основные и «запасные»сценарии Имеют предварительные условия иконечные результаты Имеют «завершенный» вид, предполагаютсквозное тестирование
  37. 37. “include”“extend”ATM – bank machineget moneyextension pointsPIN queryeat cardcondition:{3rdwrong PIN input}payment unitbankclientСнятие наличности в банкомате
  38. 38. Совершение покупки в Интернет-магазинеПользователь ищет желаемый товар ⇒находит его ⇒ помещает в корзину ⇒указывает адрес доставки ⇒ оплачиваеттовар с использованием платежной карты
  39. 39.  Тест-кейсы (планы) создаются на основереальных сценариев использованиясистемы Найденные ошибки имеют большоезначение для качества и огромные шансыбыть обнаружеными пользователями Чаще всего используется при приемочномтестировании Эффективны при интеграционном(объединении компонентов или систем)тестировании
  40. 40. Задание 10: Опишите наиболее вероятныйпользовательский сценарий для пополнениятелефона с помощью I-box
  41. 41.  Основаны на анализе внутренней структуры Направлены непосредственно на код Легко поддаются измерению тестовогопокрытияА > 2YesNo
  42. 42. Чаще всего используются при компонентномтестированииОднако могут использовать и на другихуровнях тестирования: интеграционное тестирование (иерархия) тестирование системы (меню, процессы, навигацияWEB-страницы)Легко и точно определяется покрытие (охват)выполненного теста!
  43. 43.  Тестирование утверждений Тестирование ветвлений (решений)READ AIF A > 5 THENIF A =21 THENPRINT “Key”ENDIFENDIF
  44. 44. Тестирование утверждений- техника тест-дизайна, основанная на создании тест-кейсовдля покрытия утверждений, использованных вкодеПокрытие утверждений– соотношениеколичества утверждений, покрытых тестом, кобщему количеству утверждений в кодеДля достижения 100% покрытия утвержденийнеобходимо выполнение минимум одногосценария для каждого утверждения
  45. 45. Тестирование решений- техника тест-дизайна, основанная на создании тест-кейсов дляпокрытия решений (веток) кодаПокрытие решений– соотношение количестварешений, покрытых тестом, общему количествурешений (веток) кодаДля достижения 100% покрытия решенийнеобходимо выполнение минимум одного сценариядля каждого решения (ветки) кода100% покрытие решений гарантирует 100% покрытиеутверждений!
  46. 46. Определите минимально необходимоеколичество тест-кейсов для обеспечения: 100% покрытия при тестированииутверждений; 100% покрытия при тестировании решений Укажите значение переменныхДля удобства код можно переводить в схему(см.слайд №43)
  47. 47. READ AREAD BIF A < 0 THENPRINT “A negative”ELSEPRINT “A positive or zero”ENDIFIF B < 0 THENPRINT “B negative”ELSEPRINT “B positive or zero”ENDIFДля 100% покрытия утверждений ирешений достаточно 2 тест-кейсов
  48. 48. READ AREAD BIF A > B THENA = A + 1ELSEB = B + 1ENDIFWHILE A > BB = A * BA = A + 1ENDWHILEДля 100% покрытия утверждений ирешений достаточно 2 тест-кейсов
  49. 49. READ AREAD BWHILE B > APRINT “hello”WHILE B > 10B = B – 1ENDWHILEENDWHILEДля 100% покрытия утверждений ирешений достаточно 1 тест-кейса
  50. 50. READ AREAD BIF B < A THENWHILE A < 2A = A +2PRINT “a”ENDWHILEELSEIF A = B THENB = 2BELSEA = 2AENDIFENDIFДля 100% покрытия утверждений ирешений достаточно 3 тест-кейсов
  51. 51.  Тестирование условийREAD AREAD BIF A > 3 OR B < 5 THENPRINT “Key”ENDIF
  52. 52. Тестирование условий – техника тест-дизайна, основанная на создании тест-кейсов для покрытия каждой отдельнойчасти «сложного» условияЧасти условия (atomic or partial conditions)связаны между собой логическимиоператорами AND, OR, NOT
  53. 53. READ AREAD BIF A > 3 OR B < 5 THENPRINT “Key”ENDIFA=6 (T), B=8 (F), A>3 OR B<5 (T)A=2 (F), B=3 (T), A>3 OR B<5 (T)Минимальное требование к покрытию условий -тестирования сценариев, приводящих к обеимвозможным результатам TRUE / FALSE длякаждой части условия
  54. 54. READ AREAD BIF A > 3 OR B < 5 THENPRINT “Key”ENDIFA=6 (T), B=3 (Т), A>3 OR B<5 (T)A=6 (T), B=8 (F), A>3 OR B<5 (T)A=2 (F), B=3 (T), A>3 OR B<5 (T)A=2 (F), B=8 (F), A>3 OR B<5 (F)Множественное тестирование условийпредполагает покрытие всех возможныхTRUE/FALSE комбинаций для частичных условий
  55. 55. READ AREAD BIF A > 3 OR B < 5 THENPRINT “Key”ENDIFA=6 (T), B=3 (Т), A>3 OR B<5 (T)A=6 (T), B=8 (F), A>3 OR B<5 (T)A=2 (F), B=3 (T), A>3 OR B<5 (T)A=2 (F), B=8 (F), A>3 OR B<5 (F)При выборе сценария тестирования важноопределить тот, который является чувствительным кошибкам (позволяет их выявить). Сценарии, вкоторых ошибки «маскируются», выполнять необязательно.
  56. 56. Определите сценарии тестированияусловий, обеспечивающие минимальнонеобходимое покрытие, множественноетестирование, а также выберитесценарии, чувствительные к ошибкам.READ AREAD BIF A < 18 OR B > 55 THENPRINT “OK”ENDIF
  57. 57. A=10, B=27: A<18 (T), B>55 (F), A<18 OR B>55 (T)A=27, B=72: A<18 (F), B>55 (T), A<18 OR B>55 (T)A=31, B=31: A<18 (F), B>55 (F), A<18 OR B>55 (F)A=5, B=75: A<18 (T), B>55 (T), A<18 OR B>55 (T)
  58. 58. Определите сценарии тестированияусловий, обеспечивающие минимальнонеобходимое покрытие, множественноетестирование, а также выберитесценарии, чувствительные к ошибкам.READ AIF A > 3 AND A < 5 THENPRINT “Key”ENDIF
  59. 59. A=8: A>3 (T), A<5 (F), A>3 AND A<5 (F)A=1: A>3 (F), A<5 (T), A>3 AND A<5 (F)A=4: A>3 (T), A<5 (T), A>3 AND A<5 (T)A=?: A>3 (F), A<5 (F), A>3 AND A<5 (F)
  60. 60.  Направленность тестирования Полный охват кода Управление потоком Отслеживание целостности данных Тестирование, определяемое внутреннималгоритмом (сортировка, преобразованиематрицы)Не позволяет обнаружить не разработанныетребования!
  • IgorSolopii

    Jan. 12, 2018
  • DaryaYelshaeva

    Jan. 10, 2018
  • SergeyShidlovsky

    Jun. 7, 2017
  • DmitryDanilich

    May. 16, 2017
  • KsenyaNychyporchuk

    Sep. 27, 2016
  • goodman111

    Mar. 7, 2016
  • NatalyaMishchenko

    Jan. 29, 2016
  • JuliaBelova1

    Jan. 25, 2016
  • VegetableiFish

    Jan. 13, 2016
  • MariaKremin

    Dec. 30, 2015
  • OksanaDemenchenko

    Sep. 27, 2015
  • dloboda

    Sep. 8, 2015
  • ChristineNolwenn

    May. 5, 2015
  • KaterynaDenysova

    Feb. 24, 2015
  • Sane4ka

    Dec. 8, 2014
  • FAMirabell

    May. 28, 2014

Views

Total views

12,963

On Slideshare

0

From embeds

0

Number of embeds

6

Actions

Downloads

0

Shares

0

Comments

0

Likes

16

×