всі лаби по якості / Lab4_QA_UnitTests / Lab Practicum 4Укр
.docЛабораторна робота №4
Блочне тестування (Unit Testing )
Теоретичні відомості:
Блочний тест– це частина коду написана розробником, яка перевіряє маленьку частинку функціональності коду, який тестується.
Зазвичай unit test перевіряє певний метод в певному контексті. Наприклад, ви можете додати більше значення до відсортованого списку, а тоді перевірити що це значення з’являється в кінці списку. Або, ви можете видалити певні символи зі стрічки і тоді підтвердити що вони видалені. Блочний тест виконується для того щоб довести, що частина коду робить саме те що розробник від неї очікує.
Мета лабораторної роботи:
Закріпити теоретичні знання написавши блочний тест для колекції класів .NET
Завдання:
-
Відкрити Example Solution, розглянути написані блочні тести. Запустити їх використовуючи NUnit.
-
Створити нове тестове рішення (solution) в Visual Studio 2008 (використовуючи NUnit або Microsoft unit testing framework яка доступна в професійній версії)
-
Напишіть 10 блочних тестів для одного з наступних .NET класів:
-
Stack<> 1 9
-
Queue<> 2 10
-
List<> 3 11
-
SortedList<,> 4 12
-
Dictionary<,> 5 13
-
LinkedList<> 6 14
-
Hashtable 7 15
-
ArrayList 8 16
-
Використовуйте наступні рекомендації:
-
Тестуйте найпоширеніші функції (Add, Remove, Sort, Contains)
-
-
Тестуйте з граничними значеннями (null, 0, -1, int.MaxInt)
-
Протестуйте виняткові ситуації (NullReferenceException, ArgumentOutOfRangeException, etc)
Вихідні дані:
-
Проект блочного тестування (Unit Tests project)
-
Результати тестів і документ що їх описує
Вхідні дані:
-
Andrew Hunt, David Thomas, Pragmatic Unit Testing In C# with NUnit,
-
http://geosoft.no/development/unittesting.html
-
http://en.wikipedia.org/wiki/Unit_testing
-
http://www.nunit.org/index.php
-
Example Solution.
Результати та опис тесту
Тест ComparingTwoSets:
Тест функції SetEquals з класу HashSet. Впевнює що дві множини хешів побудовані з двох різних числових масивів є рівні як множини.
Контрольні питання:
-
Термін «тестування».
-
Процес тестування.
-
Збій, відмова, дефект.
-
Дефекти в тестуванні.
-
Покриття тестів.
-
Визначення об’єктів тестування.
-
Розробка плану тестування.
-
Ефективність тестування.
-
Проблема оракула.
-
Зв’язок тестування з іншими видами діяльності.
-
Тестоспроможність.