- •Содержание
- •Введение
- •1 Анализ исходных данных
- •2 Программное проектирование
- •3 Программная реализация
- •3.1 Детальная реализация функциональных частей по
- •Проверяем время записи и наличие данных в очереди. Извлекаем данные из очереди и записываем в файл. Уменьшаем счетчик размера очереди. Процесс повторяется вновь при помощи цикла while.
- •3.2 Сопроводительная документация по
- •3.3 Анализ по
- •3.4 Тестирование по
- •Заключение
- •Список использованных источников
- •Приложения Приложение а
- •Техническое задание
- •1 Назначение, цели и задачи разработки
3.2 Сопроводительная документация по
Задание к курсовому проекту содержится в приложении А.
3.3 Анализ по
Для анализа кода Python был применен статистический инструмент — Pylint. Этот мощный, гибко настраиваемый инструмент для анализа кода Python отличается большим количеством проверок и разнообразием отчетов. Это один из самых «придирчивых» и «многословных» анализаторов кода. Анализ программы выдает весьма обширный отчет, состоящий из списка найденных в ходе анализа недочетов, статистических отчетов, представленных в виде таблиц, и общей оценки кода.
Программа имеет свою внутреннюю маркировку проблемных мест в коде:
[R]efactor — требуется рефакторинг;
[C]onvention — нарушено следование стилистике и соглашениям;
[W]arning — потенциальная ошибка;
[E]rror — ошибка;
[F]atal — ошибка, которая препятствует дальнейшей работе программы.
Для вывода подробного отчета был использован ключ командной строки --reports=y. В ходе выполнения анализа кода программы была получена следующая статистика:
Таблица 3.2 – Статистика по типам
Тип |
Количество |
module |
2 |
class |
4 |
method |
9 |
function |
4 |
Рисунок 3.1 – Внешние зависимости
Таблица 3.3 – Метрики исходного кода
Тип строки |
Количество |
% |
Код |
213 |
58,68 |
Документация |
85 |
23,42 |
Комментарий |
25 |
6,89 |
Пустые |
40 |
11,02 |
Таблица 3.4 – Сообщения по категориям
Тип сообщения |
Количество |
Cоглашение |
34 |
Рефакторинг |
0 |
Предупреждение |
7 |
Ошибка |
0 |
Таблица 3.5 – Сообщения
Сообщение |
Количество |
invalid-name |
21 |
bad-whitespace |
8 |
unused-argument |
3 |
logging-not-lazy |
2 |
protected-access |
1 |
missing-module-docstring |
1 |
missing-function-docstring |
1 |
missing-final-newline |
1 |
line-too-long |
1 |
global-statement |
1 |
bad-continuation |
1 |
Общая оценка кода программы статистического инструмента для анализа кода Python Pylint: 7,83 из 10 баллов.
3.4 Тестирование по
Планом испытаний является проведение тестирования программы. Для проверки работы программы будут созданы разного рода ситуации. Тестирование программы производилось многократно.
Результаты тестирования приведены в таблице 3.6.
Таблица 3.6 – Результаты тестирования
Описание теста |
Выполняемые действия |
Реакция программы |
Вывод |
Запуск программы |
Активирован файл программы в интерпретаторе |
Появилось окно программы |
Выполнено |
Продолжение таблицы 3.6
Описание теста |
Выполняемые действия |
Реакция программы |
Вывод |
Запуск программы с разными параметрами файла конфигурации |
Поочередно изменяем параметры файла конфигурации |
Значения глобальных переменных изменяются в программе в соответствии с заданными |
Выполнено |
Запуск программы без файла конфигурации |
Удален файл конфигурации. Активирован файл программы в интерпретаторе |
Появился новый файл конфигурации со значениями по умолчанию |
Выполнено |
Создание аудиофайлов и запись в них аудиоданных |
Активирован файл программы в интерпретаторе. Произнесена тестовая фраза |
Появилось сообщение о записи файла. Тестовая фраза слышна при воспроизведении файла |
Выполнено |
Запись длинных тестовых фраз, не превышающих максимальную продолжительность записи |
Активирован файл программы в интерпретаторе. Произнесена длинная фраза в течение минуты |
Появилось сообщение о записи файла. Запись продолжатся до конца произнесения тестовой фразы. Тестовая фраза слышна при воспроизведении |
Выполнено |
Запись длинных тестовых фраз, превышающих максимальную продолжительность записи |
Активирован файл программы в интерпретаторе. Произнесена длинная фраза продолжительностью превышающей максимальную длину файла |
Появилось сообщение о записи файла. Запись тестовой фразы продолжатся до максимального заданного времени. Тестовая фраза слышна при воспроизведении файла |
Выполнено |
Окончание таблицы 3.6
Описание теста |
Выполняемые действия |
Реакция программы |
Вывод |
Проверка записи временных меток в именах файлов и папок |
Сверяем записанные значения дат и времени с реальными |
Дата и время совпадают с реальными в названии файлов и папок |
Выполнено |
Проверка работоспособности программы на разных устройствах аудиоввода |
Подключен внешний микрофон. Изменены параметры в файле конфигурации. Произнесена тестовая фраза |
Появилось сообщение о записи файла. Тестовая фраза слышна при воспроизведении файла |
Выполнено |
Запуск программы на разных операционных системах |
Активирован файл программы в интерпретаторе ОС Linux |
Появилось окно программы |
Выполнено |
Создание аудиофайлов и запись в них аудиоданных в других операционных системех |
Активирован файл программы в интерпретаторе ОС Linux. Произнесена тестовая фраза |
Появилось сообщение о записи файла. Тестовая фраза слышна при воспроизведении файла |
Выполнено |
Запуск программы без файла конфигурации на других операционных системах |
Удален файл конфигурации. Активирован файл программы в интерпретаторе ОС Linux |
Появился новый файл конфигурации со значениями по умолчанию |
Выполнено |
Запуск программы с разными параметрами файла конфигурации на других операционных системах |
Поочередно изменяем параметры файла конфигурации в ОС Linux |
Значения глобальных переменных изменяются в программе в соответствии с заданными |
Выполнено |
В ходе тестирования программы были найдены и устранены ошибки, которые приводили к неправильной работе всей программы или неправильным действиям. После выполнения тестирования программа готова к использованию.