СодержаниеСодержание
Содержание 2
1. Введение 3
1.1. Глоссарий 3
1.2. Описание предметной области 4
1.2.1. Проект “Автоматизация процесса юнит-тестирования приложения “Почтовый клиент”. 4
1.2.2. Описание совместной деятельности 7
1.3. Неформальная постановка задачи 7
1.4. Обзор существующих методов решения 8
1.2.3. Аналогичные решения 8
1.2.4. Описание предшествующих работ 8
Вывод 9
1.5. План работ 9
2. Требования к окружению 10
2.1. Требования к аппаратному обеспечению 10
2.2. Требования к программному обеспечению 10
2.3. Требования к пользователям 10
2.4. Организационные требования 11
3. Архитектура системы 12
4. Прочие требования 14
4.1. Требования к надёжности 14
4.2. Требования к производительности 14
5. Проект 15
5.1. Средства реализации 15
5.2. Модули системы 15
5.2.1. Система тестирования GUI 15
5.2.2. Тестовая консоль 16
5.3. Проект интерфейса 16
6. Реализация и тестирование 20
Заключение 21
Список литературы 22
Приложение 1: Архитектура P2K 23Введение1. Введение
1.1. Глоссарий
Юнит-тестирование – процесс в программировании, позволяющий проверить на кор-ректность отдельные модули исходного кода программы.
Software Framework (далее фреймворк) — каркас программной системы (или подсисте-мы). Может включать вспомогательные программы, библиотеки кода, язык сценариев и другое программное обеспечение, облегчающее разработку и объединение разных компонентов боль-шого программного проекта. [1]
GUI – графический пользовательский интерфейс.
UTFW Console (Unit Test Framework Console) — реализованная автором этой работы GUI приложение, предназначенное для выполнения тестов и получения результата. Приложение поддерживает P2K телефоны и симулятор CSalt.
P2K – платформа большинства современных телефонов компании Motorola. Базируется, как и прочие платформы мобильных устройств, на операционной системе реального времени. [2]
Application layer – часть платформы P2K, отвечающая за функционирование аппликаций, представляющих пользовательский интерфейс приложений, а также – за функционирование системы графического пользовательского интерфейса.
Device layer – часть платформы P2K, отвечающая за функционирование сервисов, пред-ставляющих логику приложений, а также – за функционирование общих сервисов, например: файловой системы, работы с сетью и т.п.
Engine layer – часть платформы P2K, содержащая задачи, требующие большего количест-ва временных ресурсов, чем приложения или сервисы. Это стеки протоколов соединений, ме-неджер подключений и т. п.
UIS (User Interaction Services) — часть платформы P2K, отвечающая за взаимодействие с пользователем (создание, отображение форм, диалогов, обработка нажатий кнопок в рамках этих форм и диалогов и.т.д.). Иногда UIS относят к Device layer’у, но чаще выделяют как от-дельную составляющую P2K.
CSalt – Windows-приложение, симулирующее часть функциональности телефона, такой, как работа с сетью через сетевые сокеты, работа с файловой системой, работа с мультимедиа приложениями и т.п. Позволяет разрабатывать код для телефонов на персональном компьютере с использованием средств отладки MS Visual Studio.
Рефакторинг — процесс полного или частичного переписывания компьютерной про-граммы или другого материала, с целью добиться улучшения читаемости кода и общей внут-ренней структуры компонентов, при полном и точном сохранении изначального смысла и пове-дения (кроме случаев, когда при рефакторинге устраняется ошибка — неправильное поведение). [7]
Конфигурационного менеджмент (CM) — некоторый процесс, цель которого устанавли-вать и поддерживать целостность продуктов разрабатываемых в рамках проекта по созданию ПО в течение всего жизненного цикла этого проекта.ЛитератураСписок литературы
[1] Wikipedia: the free encyclopedia, Framework, http://ru.wikipedia.org/wiki/Framework
[2] Wikipedia: the free encyclopedia, Операционная система реального времени, http://ru.wikipedia.org/wiki/Операционная_система_реального_времени
[3] Joel on software, Picking a Ship Date, http://www.joelonsoftware.com/articles/PickingShipDate.html
[4] Wikipedia: the free encyclopedia, Kent Beck, http://en.wikipedia.org/wiki/Kent_Beck
[5] Wikipedia: the free encyclopedia, xUnit, http://en.wikipedia.org/wiki/XUnit
[6] Обуховская З. Н. Отчёт по курсовой работе. Автоматизация процесса юнит-тестирования приложения ‘Почтовый клиент’: Device layer
[7] Refactoring: Improving the Design of Existing Code, Martin Fowler, Kent Beck, Fowler et al., 1999
[8] Refactoring To Patterns. Addison-Wesley, Joshua Kerievsky, Addison-Wesley, 2004
[9] Unit Testing in Java: How Tests Drive the Code, Johannes Link, Morgan Kaufmann, 2003
[10] Automated Software Testing: Introduction, Management, and Performance, Elfriede Dustin, Jeff Rashka
[11] Unit Test Frameworks, Paul Hamill, O'Reilly, 2004
[12] Effective Software Testing: 50 Specific Ways to Improve Your Testing, Elfriede Dustin
[13] Software Engineering Handbook, Jessica Keyes, McGraw-Hill, 1986
[14] The Art of Software Testing, Glenford J. Myers, John Wiley and Sons, 2004
[15] Artificial Intelligence Methods in Software Testing, Mark. Last, Abraham Kandel,
World Scientific, 2004'
|
|