Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Лр №9 подробное описание тестового случая

ЛР №1 ПРИМЕР ОБРАТНОГО ВЫПОЛНЕНИЯ ДЛЯ ПРОГРАММЫ ВЫЧИСЛЕНИЯ СТЕПЕНИ ЧИСЛА X | ЛР №2 ТРИ ФАЗЫ ТЕСТИРОВАНИЯ | ЛР №3 ТРЕБОВАНИЯ К ИДЕАЛЬНОМУ КРИТЕРИЮ ТЕСТИРОВАНИЯ | ЛР №4 МУТАЦИОННЫЙ КРИТЕРИЙ (КЛАСС IV). | ЛР №5 ОЦЕНКА ПОКРЫТИЯ ПРОГРАММЫ И ПРОЕКТА | ЛР №6 МОДУЛЬНОЕ ТЕСТИРОВАНИЕ | ЛР №7 ПРИМЕР ИНТЕГРАЦИОННОГО ТЕСТИРОВАНИЯ |


Читайте также:
  1. B.1.2. Перечень и описание вспомогательных активов
  2. Job Descriptions Описание работы
  3. Job Descriptions: Описание работы
  4. Ultimate MK3 Универсальное описание добиваний для всех версий игры .
  5. Агрегатное описание систем
  6. Аннотированное описание содержания разделов и тем дисциплины
  7. Бланк-заказ или описание вакансии - 2 вперед назад

Рассматривается пример тестов на C# для класса TCommand (приложение 3 (HLD)). При выполнении заданий необходимо будет самостоятельно написать тесты для других классов приложения. Параллельно с изучением этого раздела полезно открыть проект ModuleTesting\ModuleTests.sln.

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

Название класса: TСommand

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

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

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

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

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

Коду команды -1 должно соответствовать сообщение "ОШИБКА: Неверный код команды"

Коду команды 1 должно соответствовать полное название команды "ПОЛУЧИТЬ ИЗ ВХОДНОЙ ЯЧЕЙКИ"

Коду команды 2 должно соответствовать полное название команды "ОТПРАВИТЬ ИЗ ЯЧЕЙКИ В ВЫХОДНУЮ ЯЧЕЙКУ"

Коду команды 4 должно соответствовать полное название команды "ПОЛОЖИТЬ В РЕЗЕРВ"

Коду команды 6 должно соответствовать полное название команды "ПРОИЗВЕСТИ ЗАНУЛЕНИЕ"

Коду команды 20 должно соответствовать полное название команды "ЗАВЕРШЕНИЕ КОМАНД ВЫДАЧИ"

На основе спецификации был создан тестовый драйвер - класс TCommandTester, наследующий функциональность абстрактного класса Tester.

public class Log{static private StreamWriter log=newStreamWriter("log.log"); //Создание лог файлаstatic public void Add(string msg)//Добавление сообщения в лог файл{log.WriteLine(msg);}static public void Close() //Закрыть лог файл{log.Close();}}abstract class Tester{protected void LogMessage(string s)//Добавление сообщения в лог-файл{Log.Add(s);}}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());}}[STAThread]static void Main(){TCommandTester CommandTester = new TCommandTester();Log.Close();}}

Листинг 2.1. Тестовый драйвер (html, txt)

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

Таким образом, для тестирования любого метода класса необходимо:

Определить, какая часть функциональности метода должна быть протестирована, то есть при каких условиях он должен вызываться. Под условиями здесь понимаются параметры вызова методов, значения полей и свойств объектов, наличие и содержимое используемых файлов и т. д.

Создать тестовое окружение, обеспечивающее требуемые условия.

Запустить тестовое окружение на выполнение.

Обеспечить сохранение результатов в файл для их последующей проверки.

После завершения выполнения сравнить полученные результаты со спецификацией.

 

 


Рекомендуемая литература

 

Основная:

- Котляров В.П. Основы тестирования программного обеспечения. Интернет-университет информационных технологий - ИНТУИТ.ру, 2006

- Скопин И.Н. Основы менеджмента программных проектов. Интернет-университет информационных технологий - ИНТУИТ.ру, 2004

 

Дополнительная:

- Beizer B. Software Testing Techniques. ITP, 1990. - 550 pp.

- Boehm B. Software Engineering Economic. Prentice-Hall,Inc, N.J. 1981. - 767 pp.

- Макгрегор Дж, Сайкс Д. Тестирование объектно-ориентированного программного обеспечения. К: Диасофт, 2002. - 432с.

- Брукс Ф. Мифический человеко-месяц или как создаются программные системы. СПб.: Символ-Плюс, 1999. - 304с.

- Липаев В.В. Тестирование программ. М.: Радио и связь, 1986. - 296с.

- Канер С., Фолк Дж., Нгуен Енг. Тестирование программного обеспечения. К: ДиаСофт, 2000 - 544с.

- Рекомендации по преподаванию информатики в университетах. СПб., 2002 - 372с.

- IEEE Software Engineering Standards Collection 1997 Edition

- IEEE Standard Glossary of Software Engineering Technology

- IEEE Std 610.12-1990,

- Шимаров В. А. Тестирование программ: цели и особенности инструментальной поддержки // Программное обеспечение ЭВМ / АН БССР. Институт математики. Минск, 1994. - Вып. 100 - с. 19 - 43

- Goodenough J.B., Gerhart S.L. Toward a Theory of Test Data Selection. IEEE Transactions on Software Engineering, 1975, SE-1, №.2, p.156-193

- Moranda P.B. Asymptotic Limits to Program Testing, INFOTECH State of Art deport "Software Testing", v/2, 1979, p.201-210

- Halstead M. Elements of Software Science. Elsevier North-Holland, Inc. 1977, pp.109

- Herman P. M. A Data Flow Analysis Approach to Program Testing. Australian Computer Jornal. - 1976. - Vol. 8, № 3. pp. 92 - 96

- Ntafos S. C. A Comparition of Some Structural Testing Strategies. IEEE Transaction on Software Engineering. - 1988. - Vol. SE-14, № 6. pp. 868 - 874

- Борзов Ю. В., Уртанс Г. Б., Шимаров В. А. Выбор путей программы для построения тестов. УСиМ. - 1989. - N. 6 - с.29 - 36

- Shimarov V. A. Definition and quantitative estimation of testing criteria // Software Quality Concern for people. Proceedings of the Fourth European Conference on Software Quality. October 17 - 20, 1994, Basel, Switzerland. pp. 350 -360

- McCabe T. J., Schulmeyer G. G. System Testing Aided by Structured Analysis (A Practical Experience) // COMPSAC'82. Proc. IEEE Comput. Soc. 6th International Computer Software and Appl. Conference (Chicago, Ill, Nov. 8-12, 1982). - pp. 523 - 528

- McCabe T. J., Butler Ch. W. Design complexity measurement and testing. Communications of the ACM. 32, 12 (Dec, 1989), pp. 1415 - 1425

- Prather R., Myers J. P., Jr. The path prefix software testing strategy. IEEE Transactions on Software Engineering SE-13, 7 (July, 1987), pp. 761 - 766

- Фролов А. В., Фролов Г. В. Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT. М.: ДИАЛОГ-МИФИ, 1996. - 288 с. - (Библиотека системного программиста; Т. 24)

- Dorman M. N. C++ - It's Testing, Jim, But Not As We Know It. In Proc. of 5th European Conference in Software Testing, Analysis and Review (Edinburgh, Scotland, November 1997). - 13 p.],

- Jorgensen P. C., Erickson C. Object-Oriented Integration Testing. Communications of the ACM. 37, 9 (Sept, 1994), pp. 30 - 38

- Майерс Г. Искусство тестирования программ. М.: Финансы и статистика, 1982. -176 с.

- Beizer B. Software testing techniques. (Second edit.). International Thomson Computer Press, 1990. - 550p.

 


Дата добавления: 2015-11-14; просмотров: 61 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
ЛР №8 СИСТЕМНОЕ ТЕСТИРОВАНИЕ| Индивидуальные задания

mybiblioteka.su - 2015-2024 год. (0.007 сек.)