- •2015 Г.
- •1. Тестирование программного обеспечения
- •1.1 Модульное тестирование
- •1.2 Интеграционное тестирование
- •1.3 Системное тестирование
- •1.4 Регрессионное тестирование
- •1.5 Ручное и автоматизированное тестирование
- •2. Автоматизация тестирования программного обеспечения
- •2.1 Основные аспекты автоматического тестирования
- •2.2 Преимущества и недостатки автоматического тестирования
- •3. Практическая часть
- •3.1 Постановка задачи
- •3.2 Описание тестируемой программы
- •3.3 Выполнение тестирования
- •3.4 Листинг тестов
- •3.5 Листинг тестируемой программы
3. Практическая часть
3.1 Постановка задачи
Выполнить модульное тестирование программы «Архив студенческих групп», написанной на языке программирования C#.
3.2 Описание тестируемой программы
Программа включает две формы с расположенными на ней элементами: форма главного окна и форма для вывода списка группы.
Рисунок 4. Форма главного окна программы
Форма главного окна (рисунок 4) содержит следующие основные элементы:
1) Элементы типа listBox для вывода списков «Год обучения», «Специальность», «Курс», «Группы»;
2) Элементы типа button для добавления, удаления и редактирования записей в списках и для вывода списка группы;
3) Элементы типа textBox для добавления и редактирования записей в списках.
Форма вывода списка группы (рисунок 5) содержит следующие основные элементы:
Элемент listBox для вывода списка учебной группы;
Элемент label для вывода информации (год, специальность, курс, номер группы) о текущей учебной группе;
Элементы button для создания, удаления, редактирования записи в списке и для сохранения текущего списка в системе.
Рисунок 5. Форма вывода списка группы
Функционал программы состоит в возможности создания, редактирования, просмотра и удаления списков студенческих групп по году обучения, специальности, курсу и номеру группы.
3.3 Выполнение тестирования
Тестирование выполнено с помощью открытой среды юнит-тестирования NUnit. Для тестирования был создан тестовый драйвер – класс TestFixture1, в котором реализована вся функциональность тестов:
1) Тест 1. Тестирование метода Form1() класса Form1.
Описание тестового случая: Тест (метод TestForm()) проверяет правильность создания формы главного окна программы.
Начальные условия: нет
Ожидаемый результат: объект класса Form1 ненулевой.
Полученный результат: тест выполнен успешно.
2) Тест 2. Тестирование метода LoadFile(string fname, ListBox lb) класса Form1.
Описание тестового случая: Тест (метод TestLoadFile()) проверяет загрузку существующего файла в listBox.
Начальные условия: Создается объект класса Form1 и задаются входные значения для формирования имени файла.
Год обучения: int year = 2011;
Специальность: string spec = "Информатика";
Курс: int kurs = 1;
Группа: string group = "1 группа".
Ожидаемый результат: загрузка выполнена.
Полученный результат: тест выполнен успешно.
3) Тест 3. Тестирование метода LoadFile(string fname, ListBox lb) класса Form1.
Описание тестового случая: Тест (метод TestLoadFileNot()) проверяет загрузку отсутствующего (несуществующего) файла в listBox.
Начальные условия: Создается объект класса Form1 и задаются входные значения для формирования имени файла.
Год обучения: int year = 2022;
Специальность: string spec = "Информатика";
Курс: int kurs = -1;
Группа: string group = "1 группа".
Ожидаемый результат: загрузка не выполнена.
Полученный результат: тест выполнен успешно.
4) Тест 4. Тестирование метода SaveFile(string fname, ListBox lb) класса Form1.
Описание тестового случая: Тест (метод TestSaveFil()) проверяет сохранение существующего файла.
Начальные условия: Создается объект класса Form1 и задаются входные значения для формирования имени файла.
Год обучения: int year = 2011;
Специальность: string spec = "Информатика";
Курс: int kurs = 1;
Группа: string group = "1 группа".
Ожидаемый результат: сохранение выполнено.
Полученный результат: тест выполнен успешно.
5) Тест 5. Тестирование метода SaveFile(string fname, ListBox lb) класса Form1.
Описание тестового случая: Тест (метод TestSaveFileNot()) проверяет сохранение отсутствующего (несуществующего) файла.
Год обучения: int year = 2022;
Специальность: string spec = "Информатика";
Курс: int kurs = -1;
Группа: string group = "1 группа".
Ожидаемый результат: сохранение не выполнено.
Полученный результат: тест выполнен успешно.