Главная > Отладка и тестирование приложений в среде Visual Studio 2005
<< Предыдущий параграф Следующий параграф >>
Пред.
След.
Макеты страниц

Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше

Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике

4.1.4. Пример модульного тестирования

Пусть требуется протестировать класс TCommand, который реализует команду для склада. Этот класс содержит единственный метод TCommand.GetFullName(), спецификация которого описывается следующим образом:

Операция GetFullName() возвращает полное имя команды, соответствующее ее допустимому коду, указанному в поле NameCommand. В противном случае возвращается сообщение «ОШИБКА: Неверный код команды». Операция может быть применена в любой момент.

Разработаем спецификацию тестового случая для тестирования метода GetFullName

на основе приведенной спецификации класса (Таблица 5).

Таблица 5. Спецификация теста

Название класса: TCommand

Название тестового случая: TCommandTest1

Описание тестового случая. Тест проверяет правильность работы метода

GetFullName - получения полного названия команды на основе кода команды. В

тесте подаются следующие значения кодов команд (входные значения):

-1, 1, 2, 4, 6, 20, (причем, 1 - запрещенное значение).

Начальные условия. Нет.

Ожидаемый результат

 

Перечисленным входным значениям должны соответствовать следующие вы

ходные:

 

Коду команды -1 должно соответствовать сообщение

«ОШИБКА: Неверный код команды»

Коду команды 1 должно

соответствовать полное название команды

«ПОЛУЧИТЬ ИЗ ВХОДНОЙ ячеики»

Коду команды 2 должно

соответствовать полное название команды

«ОТПРАВИТЬ ИЗ ЯЧЕЙКИ В ВЫХОДНУЮ ЯЧЕЙКУ»

Коду команды 4 должно

соответствовать полное название команды

«ПОЛОЖИТЬ В РЕЗЕРВ»

 

Коду команды 6 должно

соответствовать полное название команды

«ПРОИЗВЕСТИ ЗАНУЛЕНИЕ»

Коду команды 20 должно соответствовать полное название команды

«ЗАВЕРШЕНИЕ КОМАНД ВЫДАЧИ»

Для тестирования метода класса TCommand.GetFullName() был создан тестовый драйвер - класс TCommandTester. Класс TCommandTester содержит метод TCommandTest1(), в котором реализована вся функциональность теста.

class TCommandTester:Tester // Тестовый драйвер
{
          ...
         TCommand OUT;
         public TCommandTester() {
            OUT=new TCommand();
            Run();
         }
         private void Run() {
            TCommandTest1();
            }
         private void TCommandTest1() {
            int[] commands = {-1, 1, 2, 4, 6, 20};
            for(int i=0;i<=5;i++) {
                        OUT.NameCommand=commands[i];
                        LogMessage(commands[i].ToString()+" : "+OUT.GetFullName());
            }
         }
}

В данном случае для покрытия спецификации достаточно перебрать следующие значения кодов команд: -1, 1, 2, 4, 6, 20, (-1 - запрещенное значение) и получить соответствующее им полное название команды с помощью метода GetFullName().

Пары значений (X, Ув) при исполнении теста заносятся в log-файл для последующей проверки на соответствие спецификации.

После завершения теста следует просмотреть журнал теста, чтобы сравнить полученные результаты с ожидаемыми, заданными в спецификации тестового случая TCommandTest1.

-1: ОШИБКА : Неверный код команды
1: ПОЛУЧИТЬ ИЗ ВХОДНОЙ ЯЧЕЙКИ
2: ОТПРАВИТЬ ИЗ ЯЧЕЙКИ В ВЫХОДНУЮ ЯЧЕЙКУ
4: ПОЛОЖИТЬ В РЕЗЕРВ
6: ПРОИЗВЕСТИ ЗАНУЛЕНИЕ
20: ЗАВЕРШЕНИЕ КОМАНД ВЫДАЧИ

 

Categories

1
Оглавление
email@scask.ru