Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

l4_NC

.pdf
Скачиваний:
11
Добавлен:
19.04.2015
Размер:
902.83 Кб
Скачать

Техническая поддержка программных решений 4/10 Инструментарий программиста: Eclipse

© 2013 NetCracker Technology Corporation Confidential

План лекции

Методы раннего диагностирования ошибок

Отладка программ в Eclipse. Интерфейс пользователя

Команды управления выполнением программы

Фильтры исполнения программы

Точки останова, их свойства, экспорт и импорт

Экспорт и импорт конфигураций запуска

Консоль ввода-вывода

Удаленная отладка

© 2013 NetCracker Technology Corporation Confidential

2

Методы раннего диагностирования ошибок

© 2013 NetCracker Technology Corporation Confidential

3

Почему важно раннее диагностирование?

Рост затрат со временем

У разработчика – «прозрачный ящик», у тестировщика – «черный ящик»

© 2013 NetCracker Technology Corporation Confidential

4

Модульное тестирование

Проверка правильности отдельных программных единиц

Уровень функции, метода или класса

Автоматизированное создание тестов

Как работает:

Определяем:

Входные данные

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

Заглушки для связанных сущностей

Как выглядят ошибки:

Функция вернула 0, ожидаемый результат – 15

Произошло деление на 0 в строке 15

Читать http://habrahabr.ru/post/120101/ «Тестирование в Java. JUnit»

© 2013 NetCracker Technology Corporation Confidential

5

Функциональное тестирование

Проверка правильности работы приложения в целом

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

Возможна автоматизация

Как работает:

Определяем

входные данные,

последовательность действий

Исполняем

Отслеживаем результат и сверяем с ожидаемым

Как выглядят ошибки:

Должна отобразиться картинка А, но отобразилась картинка B

Произведена недопустимая операция в файле X на строке Y

© 2013 NetCracker Technology Corporation Confidential

6

Динамический анализ

Отслеживание свойств программы во время исполнения

Определяемые ошибки:

Критические (деление на ноль и др.)

Проблемы безопасности

Проблемы с памятью

Уязвимости безопасности

Проблемы многопоточности

Как это работает:

Инструментируем приложение

Исполняем его по определенным сценариям

Как выглядят ошибки:

Утечка памяти в файле X на строке L, соответствующая выделению памяти в файле X1 на строке L1

© 2013 NetCracker Technology Corporation Confidential

7

Статический анализ

Автоматизированный анализ исходного кода программы без его исполнения

Виды анализа:

Синтаксический (простые ошибки, стиль написания)

Потоковый (ошибки динамической природы)

Метрики

© 2013 NetCracker Technology Corporation Confidential

8

Статический анализ

Parasoft Jtest находит ошибку в коде Apache- Ant-1.7.0beta1 (ClassNotFound-Exception не Обрабатывается должным образом и приводит к NPE)

© 2013 NetCracker Technology Corporation Confidential

9

Code Review

Просмотр кода участниками проекта

Как выглядят ошибки:

Вася, на этой строке кода у тебя может возникнуть целочисленное переполнение

А здесь, в критически важном месте, у тебя неэффективный SQL-запрос

© 2013 NetCracker Technology Corporation Confidential

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]