Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LR3.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
560 Кб
Скачать
☆

Visual Studio забезпечує засіб автоматизації створення модульних тестів. Ви можете клацнути правою

кнопкою миші в файлі коду для існуючого класу і вибрати в контекстному меню пункт Create Unit Tests. В

цьому випадку Visual Studio згенерує набір модульних тестів на базі коду вашого класу. Ви можете також

клацнути правою кнопкою миші по тестовому проекту і вибрати Add | Unit Test. Це дозволить вам вибрати

класи рішення, для яких ви хочете згенерувати модульні тести.

Генерується не лише код заглушки. Visual Studio вивчає методи і властивості вашого класу і пише

реальні тести. Звичайно, вам доведеться додати в них відповідні значення і перевірки, але генерується

цілком непоганий варіант для початку роботи.

Розглянемо приклад. Припустимо, що у вас є об'єкт CustomMath, який містить такі методи, як Sum,

Subtract, Multiply, Divide, і Square (код класу можна знайти в файлі CustomMath.cs, який знаходиться в

папці з даним файлом). Припустимо також, що ви хочете додати у ваш тестовий проект новий модульний тест.

Для виклику діалогового вікна Create Unit Tests необхідно клацнути правою кнопкою миші по назві класу в

редакторі коду. В результаті Visual Studio видасть вам діалогове вікно Create Unit Tests (рис. 1).

Рис. 1. Діалогове вікно Create Unit Tests

У цьому діалоговому вікні ви можете вибрати ті члени, для яких вам необхідно згенерувати тести та тип

тестового проекту. В даному прикладі були вибрані члени об'єкту CustomMath. Кнопка Settings відкриває

діалогове вікно, яке дозволяє вам вказати різні налаштування для генерування ваших модульних тестів. На

рис. 2 показаний приклад цього діалогового вікна.

Рис. 2. Діалогове вікно Test Generation Settings

Зверніть увагу, що ви можете використати макротекст [File], [Class] і [Method] для того, щоб вказати, що

Visual Studio повинна використати ключові елементи класу для того, щоб дати назви частинам тесту.

Visual Studio генерує тест для кожного методу і кожної властивості об'єкту. Для прикладу розглянемо

метод Sum. У прикладі показане те, що Visual Studio згенерувала в якості модульного тіста для цього

метода.

[TestMethod()]

public void SumTest()

{

CustomMath target = new CustomMath();

int x = 0; // TODO: Ініціалізувати відповідним значенням

int y = 0; // TODO: Ініціалізувати відповідним значенням

int expected = 0; // TODO: Ініціалізувати відповідним значенням

int actual;

actual = target.Sum(x, y);

Assert.AreEqual(expected, actual);

Assert.Inconclusive("Перевірити правильнисть даного тестового методу.");

}

Зверніть увагу, що цей тест створює новий екземпляр об'єкту CustomMath. Потім він намагається

обчислити суму Sum(x, y). І нарешті, він підтверджує, що обчислення суми було успішним. Все, що

залишається зробити розробникові, — це помістити в змінні x, y, expected допустимі значення (зверніть

увагу на TODO) і видалити виклик Assert.Inconclusive (щоб відмітити таким чином, що ви перевірили даний

тест).

[TestMethod()]

public void SumTest()

{

CustomMath target = new CustomMath();

int x = 11; // TODO: Ініціалізувати відповідним значенням

int y = 0; // TODO: Ініціалізувати відповідним значенням

int expected = 11; // TODO: Ініціалізувати відповідним значенням

int actual;

actual = target.Sum(x, y);

Assert.AreEqual(expected, actual);

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]