Опубликован: 05.03.2005 | Уровень: специалист | Доступ: платный
Практическая работа 5:

Ручное тестирование

Описание тестовых процедур

Тестовые процедуры - это формальный документ, содержащий описание необходимых шагов для выполнения тестового набора. В случае ручных тестов тестовые процедуры содержат полное описание всех шагов и проверок, позволяющих протестировать продукт и вынести вердикт PASS/FAIL. Процедуры должны быть составлены таким образом, чтобы любой инженер, не связанный с данным проектом, был способен адекватно провести цикл тестирования, обладая только самыми базовыми знаниями о применяющемся инструментарии.

Как запустить тест

Для того чтобы запустить тест, нужно:

В методе Class1.Main создать экземпляр нового класса и вызвать его метод start. Так как метод start является виртуальным, то можно обращаться к тестам, используя ссылку на тип Test. Это делается так:

Test t = new <ваш класс-потомок Test>;
t.start();

Собрать и запустить приложение.

Проверка результатов выполнения тестов (сравнение с ожидаемым результатом)

После завершения теста следует просмотреть текстовый журнал теста ( ..\SystemTesting\ManualTests\Tests\bin\Debug\log.log ), чтобы выяснить, какая последовательность событий в системе была реально зафиксирована (выходные данные) и сравнить их с ожидаемыми результатами, заданными в спецификации тестового случая №1.

Как уже упоминалось, кроме журнала теста, создается еще и соответствующий журнал системы. В обоих журналах содержится информация о происходивших в системе событиях. До того, как вручную сравнивать журнал теста с ожидаемыми результатами, заданными в спецификации тестового случая, вы можете использовать SystemLogAnimator (п. 14) для визуализации соответствующего журнала системы и получить наглядное (в том числе ретроспективное) представление о том, как функционировала система. Это важно при разработке тестовых случаев, потому что, не зная в деталях, как работает система, можно написать неправильный тест. Необходимо научиться отличать, что вы в действительности обнаружили - ошибку в системе или результат работы неправильного теста.

Пример неправильного теста

Предположим, что вы не поняли Приложение 2 (FS) во всех деталях и неправильно составили спецификацию тестового случая №1 и тест. Например:

//Задаем состояние окружения (входные данные)
StoreStat="32"; //Поступил подшипник
...
//Получаем информацию о функционировании системы
wait("GetStoreStat"); //опрос статуса склада
//Вместо того, чтобы получить информацию о подшипнике с
//терминала подшипника, мы хотим получить информацию
//об оси с терминала оси
wait("GetAxlePar");
...

В журнале теста мы увидим следующую информацию:

CALL: GetStoreStat 0
RETURN: 32
CALL: GetRollerPar
RETURN: 0 NewUser Depot1 123456 1 12 1 1
CALL: GetAxlePar
RETURN: 1 NewUser Depot1 123456 1 0 12 12
...

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

Задание 3

Для тестового случая №1 необходимо составить полный список всех возможных альтернативных путей (см. подраздел "Список альтернативных путей") и разработать соответствующие тесты.

Кроме того, необходимо:

  • выбрать случай использования на основании дерева решений ( ..\SystemTesting\Decision Tree.vsd );
  • составить пошаговое описание выбранного случая использования;
  • учесть все альтернативные пути;
  • составить спецификации тестовых случаев;
  • разработать соответствующие тестовые случаи (тесты) ;
  • составить тестовые отчеты (табл. 2.2).
Федор Антонов
Федор Антонов

Здравствуйте!

Записался на ваш курс, но не понимаю как произвести оплату.

Надо ли писать заявление и, если да, то куда отправлять?

как я получу диплом о профессиональной переподготовке?

Сергей Чурбанов
Сергей Чурбанов
Екатерина Столярова
Екатерина Столярова
Россия, УдГУ
Ольга Акбашева
Ольга Акбашева
Россия, Самара, Аэрокосмический университет, 2013