Скачиваний:
4
Добавлен:
29.03.2025
Размер:
1.25 Mб
Скачать

2.6. Тестирование процедур

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

Для наших тестов добавим к категории “столы” следующие подкатегории:

итог:

Также добавим следующую продукцию к уже имеющимся:

итог:

2.6.1. Тестирование процедуры, создающей запись в таблице «acceptable_components»:

Для класса с id = 3 (столы) применим:

create_acceptable_component(3, 24) # для стола - ножка стола

create_acceptable_component(3, 27) # для стола - столешница стола

итог:

Добавим так же составные части ножки и столешницы:

create_acceptable_component(24, 25) # для ножки стола - основание ножки

create_acceptable_component(24, 26) # для ножки стола - крепление ножки

create_acceptable_component(27, 28) # для столешницы стола - основание столешницы

create_acceptable_component(27, 29) # для столешницы стола - крепление столешницы

Итог:

2.6.2. Тестирование процедуры, создающей запись в таблице «prod_position_union»:

Создадим записи в таблице prod_position_union:

create_prod_position_union(1, 13, 4) # ножки стола

create_prod_position_union(13, 14, 4) # основание ножки стола

create_prod_position_union(13, 15, 4) # крепление ножки стола

create_prod_position_union(1, 16, 1) # столешница стола

create_prod_position_union(16, 17, 1) # основание столешница стола

create_prod_position_union(16, 18, 4) # крепление столешница стола

итог:

2.6.3. Тестирование процедуры, удаляющей запись в таблице «prod_position_union»:

delete_prod_position_union(1, 13) # у стол_arizone уберем ножка_стола_стальная

2.6.4. Тестирование процедуры, удаляющей запись в таблице «acceptable_components»:

delete_acceptable_component(4, 24) # у категории категория столы-металл удалим ножка стола

2.6.5. Тестирование процедуры, меняющей количество в таблице «prod_position_union»:

edit_prod_position_union_quantity(1, 13, 2345)

итог:

2.6.6. Тестирование процедуры наследования допустимых составов в таблице «acceptable_components»:

inherit_acceptable_components(4) # работает, унаследовали от 3 категории (стол) компоненты для 4 (категория столы-металл)

итог:

2.6.7. Тестирование процедуры получения списка допустимых компонентов для данного класса из таблицы «acceptable_components»:

find_acceptable_components_by_class(3) # для категории столы найдем допустимые компоненты по классу

итог:

2.6.8. Тестирование процедуры рекурсивного получения списка допустимых компонентов нижнего уровня для данного класса из таблицы «acceptable_components»:

Делаем то же самое, но рекурсивно

find_acceptable_components_by_class_recursive(3) # для категории столы найдем допустимые компоненты по классу РЕКУРСИВНО

Видно, что показало еще компоненты и для составных частей

2.6.9. Тестирование процедуры получения списка компонентов для данного объекта (продукции) из таблицы «prod_position_union»:

find_components_by_object(1) # для стол_arizone (объект) найдем компоненты

итог:

2.6.10. Тестирование процедуры рекурсивного получения списка компонентов нижнего уровня для данного объекта (продукции) из таблицы «prod_position_union»:

Для того же стола найдем рекурсивно

find_components_by_object_recursive(1) # для стол_arizone (объект) найдем компоненты РЕКУРСИВНО

итог:

2.6.11. Тестирование процедуры получения списка компонентов определенного класса для данного объекта (продукции) из таблицы «prod_position_union»:

Для этого же стола найдем компоненты по id объекта и id класса (смотрим по столешнице)

find_components_by_object_and_class(1, 27) # class_id: 24 - ножка; 27 - столешница

итог:

2.6.12. Тестирование процедуры рекурсивного получения списка компонентов нижнего уровня и определенного класса для данного объекта (изделия) из таблицы «prod_position_unioin»:

Сделаем то же самое рекурсивно (снова посмотрим по столешнице):

find_components_by_object_and_class_recursive(1, 27) # class_id: 24 - ножка; 27 - столешница

итог:

2.6.13. Тестирование процедуры получения списка объектов, которые могут быть компонентами данного объекта (продукции):

find_existing_acceptable_components_by_object(1) # для стола arizone получим список объектов, которые могут быть компонентами данного объекта

итог:

2.6.14. Тестирование процедуры рекурсивного получения списка объектов, которые могут быть компонентами нижнего уровня данного объекта (продукции):

find_existing_acceptable_components_by_object_recursive(1) # для стола arizone получим список объектов, которые могут быть компонентами данного объекта рекурсивно

итог:

Список используемых источников

1. Data Definition Guide : файл DataDef.pdf

2. Language Reference Guide: файл LangRef.pdf

3. Архитектура информационных систем. Учебник. М.,Издательский центр «Академия», 2012

4. Информационное обеспечение жизненного цикла изделий. Учебное пособие: СПб, Издательство Политехнического университета, 2012

5. Приемы объектно-ориентированного проектирования. Паттрны проектирования: Изд-во «ПИТЕР», 2008

6. Проектирование корпоративных информационных систем.: СПб, Изд-во СПбГЭТУ «ЛЭТИ», 2013

7. В.А.Дубенецкий, А.Г. Кузнецов Использование объектных моделей при создании информационных систем: учебно-методическое пособие. СПбГЭТУ «ЛЭТИ», 2016. 220 с.

8. В.А.Дубенецкий, А.Г. Кузнецов Проектирование информационных систем с использованием UML: учебно-методическое пособие. СПбГЭТУ «ЛЭТИ», 2016. 62 с.

Соседние файлы в папке 1