Тестування методом прозорої скриньки 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Тестування методом прозорої скриньки



Ті методи класів, у яких були виявлені помилки при тестуванні способом чорної скриньки були протестовані методом прозорої з иетою виявлення джерела помилки.

Клієнт 1:

Модуль AccountManagerDAL:

Клас TUsersDAL.

· UpdateUser.
Після зміни інформації користувача і після натисненні кнопки Add / Edi (Рис. 11), при підтверджені виконання операції у діалоговому вікні (Рис.12) програма звертається до метода UpdateUser.
Розглянемо цей метод в режимі Debug (Рис. 45):

 
 
 
 

Рис. 45.

 

Як бачимо з розділу Local Variables (2) (Рис. 45) методу були передані коректні дані, які мали замінити дані в базі. В процесі покрокового виконання команд виникла виняткова ситуація на кроці присвоєння значення змінної UserId першому параметру збережуваної процедури (1). Проблема в тому, що після кожної зміни збережуваної процедури у компоненті ADOStoredProc необхідно проводити обновлення списку параметрів, чого небуло зроблено у даному методі.

· GetUsersById.
При пошуку (фільтруванні) за користувацьким ID, зразу після вводу числа ‘2’ у поле Key (Рис. 17) викликається метод GetUsersById.
Розглянемо цей метод в режимі Debug (Рис. 46):

 
 
 
 

Рис. 46.

 

Як видно з розділу Local Variables (2) (Рис. 46) методу були передані коректні дані за якими має відбуватися відбір даних з бази. Під-час покрокового виконання команд, на кроці присвоєння назви процедури ‘ GetUsersById’ параметру ProcedureName компонента ADOStoredProc (1), виникла виняткова ситуація яка призвела до некоректної роботи метода. Причина токої реакції пов’язана з тим, що перед присвоєнням значень параметрів компонента ADOStoredProc небуло проведено відключення цього компонента.

 

· GetUsersByPassword.
При пошуку (фільтруванні) за паролем користувачів, зразу після вводу букви ‘g’ у поле Key (Рис. 22) викликається метод GetUsersByPassword.
Розглянемо цей метод в режимі Debug (Рис. 47):

 
 

Рис. 47.

 

Під-час покрокового виконання команд даного метода (Рис. 47), на кроці присвоєння назви процедури ‘ GetUsersByPassword’ параметру ProcedureName компонента ADOStoredProc (1), виникла виняткова ситуація яка призвела до некоректної роботи метода. Помилка в тому, що перед присвоєнням значень параметрів компонента ADOStoredProc небуло проведено відключення цього компонента.

 

Клас TGroupsDAL.

· DeleteGroup.
Після вибору зі списку групи ID якої дорівнює ‘2’ і після натискання кнопки Delete (Рис. 34), при підтвердженні виконання операції у діалоговому вікні (Рис. 35) програма звертається до метода DeleteGroup.
Розглянемо цей метод в режимі Debug (Рис. 45):

 
 

Рис. 48.

 

З розділу Local Variables (2) (Рис. 48) видно, що методу були передані коректні дані. Але в процесі покрокового виконання команд виникла виняткова ситуація на кроці присвоєння значення змінної GroupId першому параметру збережуваної процедури (1). Проблема в тому, що після кожної зміни збережуваної процедури у компоненті ADOStoredProc необхідно здійснювати оновлення списку параметрів процедури.

 

· DeleteUserFromGroup.
Після вибору користувача і групи до якої необхідно додати цього користувача, при натисненні кнопки DeleteUserFromGroup (Рис.41) програма звертається до метода DeleteUserFromGroup.
Розглянемо цей метод в режимі Debug (Рис. 45):

 
 
 
 
 

Рис. 49.

 

Як видно з розділу Local Variables (2) (Рис. 49) методу були передані коректні дані. Але в процесі покрокового виконання команд виникла виняткова ситуація на кроці обновлення списків параметрів збережуваної процедури (1). Дана помилка виникла у за’язку з заданням неправильної назви збережуваної процедури параметру ProcedureName компонента ADOStordProc (3).

 

2. Наступна частина тестування заключається у перевірці коректності роботи збережуваних процедур бази даних, тому що саме вони складають основу функцій системи, і обробки інформації.

Для тестування збережуваних процедур було використано метод чорної скриньки. Оскільки ці процедури є невеликими і простими, тестерам достатньо будо повідомити програмістам назви несправних процедур не вникаючи у причини.

 

 

Назва методу Вхідні дані Результат Висновок
dbo.AddGroup   dbo.AddUser   dbo.AddUser ToGroup     dbo.DeleteGroup   dbo.DeleteUser   dbo.DeleteUser FromGroup     dbo.GetGroups   dbo.GetGroups ByUserId     dbo.GetRoleId   dbo.GetUsers   dbo.GetUsersByGroupId     dbo.GetUsersByRoleId @GroupId: 10 @Name: KN-32     @UserId: 10 @FullName: Johny @Password: 0000 @RoleId: 2   @UserId: 10 @GroupId: 10     @GroupId: 5   @UserId: 3   @UserId: 10 @GroupId: 10     ----------------   @UserId: 3   @Login: dsdss @Password: dsdss   ----------------   @GroupId: 3   @RoleId: 2 Добавлення нової групи в таблицю dbo.Groups.     Добавлення нового користувацького запису в таблицю dbo.Users бази.   Добавлення відповідного запису в таблицю dbo.UserGroups бази.     Видалення групи, ID якої рівне ‘5’, з таблиці dbo.Groups бази.     Видалення запису користувача, ID якого рівне ‘3’ з таблиці dbo.Users бази.   Видалення запису з таблиці dbo.UserGroups бази, який відповідає за належність користувача з ID ‘10’ до групи з ID ‘10’.   {Список всіх груп з таблиці dbo.Groups бази}     {<пустий список>}   {1}   {Список всіх користувачів з таблиці dbo.Users бази}     {Список записів студентів, що належать до даної групи, з таблиці dbo.Users бази}   {Список записів викладачів з таблиці dbo.Users бази} Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.   Процедура праює коректно.

 

3. Третя частина - це тестування інтерфейсу, а саме його методів перевірки внесених даних користувачами системи. Основні перевірки валідності введених даних виконуются на верхньому рівні (рівні інтерфейсу), тому тестувався модуль інтерфейсу FmMain.

Для тестування модуля FmMain використовувався метод чорної скриньки. Процес тестування проходив так: у поля різного формату вводилися неправильні дані (наприклад в числове поле вводились букви), після чого спостерігалась реакція системи.

4. Останній пункт тестування – це перевірка сумісності. На цьому кроці система ‘ СОСtrial’ тестувалася на сумісність з різними операційними системами і програмним забезпеченням. В результаті тестування було підтверджено коректну роботу системи на всіх версіях ОС Windows починаючи з Windows XP. Також небуло виявлено несумісностей з антивірусними програмами такими, як: Kaspersky, NOD, Avira та ін..

 

Порядок виконання роботи

3.1. Ознайомитися з теоретичною частиною.

3.2. Виконати реалізацію етапу тестування для свого індивідуального завдання.

3.3. Оформити звіт згідно результатів виконаної роботи.

 

Вимоги до звіту

 

Оформити звіт для захисту лабораторної роботи за зразком:

· назва роботи

· мета роботи

· порядок роботи

· короткі теоретичні відомості

· аналіз отриманих результатів та висновок.

Оформлення звіту

 

Звіт повинен відповідати вимогам, перерахованим в розділі 3 – Вимоги до звіту. Звіт оформляється на аркушах А4 формату (додатково додається електронний варіант). Титульна сторінка повинна містити: назву предмету, такий заголовок:

Звіт

до лабораторної роботи № 4

Етап тестування

 

ПІБ, номер групи студента і дату виконання лабораторної роботи. Звіт подається викладачу для перевірки на занятті, які є наступними за даною лабораторною роботою.

 

Рекомендована література

 

1. Энди Кармайкл, Дэн Хейвуд “Быстрая и качественная разработка программного обеспечения” Москва: Издательский дом “Вильямс”, 2001, 450 ст.;

2. Антон Элиенс “Принципы объектно-ориентированной разработки программ” Москва: Издательский дом Вильямс 2002, 1 кв., 543 ст.;

3. Иан Грэхем “Объектно-ориентированные методы. Принципы и практика” Издательский дом Вильямс 2004., 434 ст.;

4. Поль М. Дюваль, Стивен М. Матиас III, Эндрю Гловер “Непрерывная интеграция: улучшение качества программного обеспечения и снижение риска ” Издательский дом Вильямс 2008., 645 ст.;

5. Роберт Л. Круз “Структуры данных и проектирование программ” издательство "Бином. Лаборатория знаний" · 2008, 580 ст.;

6. Владимир Грекул, Галина Денищенко, Нина Коровкина “Проектирование информационных систем” издательство "Интернет-университет информационных технологий" · 2008, 478 ст.;

7. Белла Виснадул, Елена Кокорева, Лариса Гагарина “Технология разработки программного обеспечения ” издательство "Инфра-М" · 2008, 730 ст.;

8. Федоров Н.В. “Проектирование информационных систем на основе современных case-технологий ” издательство "МГИУ" · 2007, 556 ст.;

9. Стив Макконнелл “Профессиональная разработка программного обеспечения” издательство "Символ-Плюс" · 2007, 582 ст.;

10. Уокер Ройс “Управление процессом создания программного обеспечения” издательство "Лори" · 2007, 388 ст.;

11. Маккарти Дж., Маккарти М. “Правила разработки программного обеспечения” издательство "Питер" · 2007, 468 ст.;

12. Владимир Липаев “Процессы и стандарты жизненного цикла сложных программных средств. Справочник” издательство "Синтег" · 2006, 742 ст.;

13. Джек Гринфилд, Джон Крупи, Кит Шорт, Стив Кук, Стюарт Кент “Фабрики разработки программ (Software Factories): потоковая сборка типовых приложений, моделирование, структуры и инструменты” издательство "Диалектика" · 2006, 546 ст.;

14. Владимир Липаев “Анализ и сокращение рисков проектов сложных программных средств” издательство "Синтег" · 2005, 678 ст.;

15. Карл Вигерс “Разработка требований к программному обеспечению” издательство "Русская Редакция" · 2003, 487 ст..

 


Навчальне видання

 

Технологія програмування та створення програмних продуктів

 

Методичні вказівки до лабораторної роботи № 4 “ Етап тестування ” з дисципліни Технологія програмування та створення програмних продуктів для студентів спеціальності 0804 “Комп’ютерні науки”

 

 

Укладач:



Поделиться:


Последнее изменение этой страницы: 2016-04-26; просмотров: 195; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.15.25.32 (0.023 с.)