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

l4_NC

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

Техническая поддержка программных решений 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

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