Обеспечение качества и диагностика ASP.NET приложений с помощью инструментов Visual Studio

advertisement
Обеспечение качества и
диагностика ASP.NET приложений с
помощью инструментов Visual
Studio
Дмитрий Андреев
Эксперт по разработке
Microsoft Россия
dmitryan@microsoft.com
Некоторые методы обеспечения качества
•
•
•
•
•
•
•
•
•
0 – Процесс
1 – Проектирование
2 – Статический анализ
3 – Юнит Тестирование
4 – Сценарное веб-тестирование
5 – Нагрузочное тестирование
6 - Профилирование
7 – Ручное тестирование
8 – Эксплуатационная диагностика
ДЕМОНСТРАЦИЯ
Архитектурный
анализ
ДЕМОНСТРАЦИЯ
Статический
анализ
ДЕМОНСТРАЦИЯ
Веб и нагрузочное
тестирование
ДЕМОНСТРАЦИЯ
Профилирование
ДЕМОНСТРАЦИЯ
Ручное тестирование
Что такое IntelliTrace
• «Цифровой
магнитофон» событий
происходящих с
приложением
• Фиксация вызовов
функций, параметров
• Гибкая возможность
настройки типов
фиксируемых событий
Зачем нужен IntelliTrace
• Простейший сценарий – дополнительная
диагностика при отладке (catch без throw)
• Диагностика при тестировании для
предоставления полной информации о
поведении приложения (MTM)
• Наиболее заманчивый сценарий: диагностика
в «боевых» условиях для выявления
непонятных, трудновоспроизводимых в среде
разработки проблем
Запуск IntelliTrace без Visual Studio
• Ранее требовалось Visual Studio 2010, в
Visual Studio 11 beta отдельный
устанавливаемый компонент
• Свободно скачиваемый Cab файл с сайта
Microsoft
• Отсутствует необходимость в установке,
требуется только распаковка в каталог на
диске
Предварительные настройки
• IntelliTraceCollection.cab
•
<путь к visual
studio>\Common7\IDE\CommonExtensions\Microsoft\IntelliTrace\11.0.0
• expand IntelliTraceCollection.cab . -F:*
• Import-Module
.\Microsoft.VisualStudio.IntelliTrace.PowerShell.dll
– get-help Intellitrace
Параметризация диагностики
• collection_plan.ASP.NET.default.xml
– Сбор только событий (IntelliTraceEvents)
• collection_plan.ASP.NET.trace.xml
– Сбор событий и информации о вызовах
Привязка к исходному коду
• Важно наличие актуальной исполняемому
файлу соответствующей версии файла PDB
– Есть особенности для ASP.NET приложений
• При работе с TFS и BuildServer возможно
автоматическое извлечение нужной версии
файла
– Source And Symbol Server Settings
• Index Sources : True
• Path to Publish Symbols \\Server\path
ДЕМОНСТРАЦИЯ
IntelliTrace в
эксплуатационной среде
Влияние на производительность
• Влияет ли IntelliTrace на
производительность? Да.
• Насколько сильно? Это зависит от
сценария вызовов функций.
Минимальные значения -2-5%
• Осторожно: Циклы+запись информации
о вызовах
Дополнительная информация
• http://msdn.microsoft.com/enus/library/dd264915(v=vs.110).aspx
• http://channel9.msdn.com/Events/BUILD/BUIL
D2011/TOOL-792T
• Diagnosing Issues in Production with
IntelliTrace and Visual Studio 11
– На русском: Диагностика проблем в рабочей среде
при помощи IntelliTrace и Visual Studio 11
СПАСИБО ЗА ВНИМАНИЕ
Дмитрий Андреев
dmitryan@microsoft.com
Download