13
Microsoft TechDays http://www.techdays.ru Microsoft Pex: обзор Сергей Попов Независимый разработчик

Microsoft Pex : обзор

Embed Size (px)

DESCRIPTION

Microsoft Pex : обзор. Сергей Попов Независимый разработчик. Microsoft Pex : обзор. Тестируемый код. Pex Exploration: Динамический анализ кода Подбор параметров для лучшего Code Coverage. Результат : Отчет Unit- тесты. Microsoft Pex. Демонстрация. Тестируемый код. - PowerPoint PPT Presentation

Citation preview

Page 1: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Microsoft Pex: обзор

Сергей ПоповНезависимый разработчик

Page 2: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Microsoft Pex: обзор

Тестируемый код

Pex Exploration:

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

Подбор параметров для лучшего Code Coverage

Результат:

Отчет

Unit-тесты

Page 3: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Microsoft Pex

Демонстрация

Page 4: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Тестируемый код

Input OutputA1 1B2 2C3 3

…AZ1 52

…XFC1 16383XFD1 16384

Page 5: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Pex:исправление ошибок

Демонстрация

Page 6: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Pex:сохранение тестов

Демонстрация

Page 7: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Параметризованные тесты

Необходима инициализация тестового окруженияВходные параметры имеют ограничения

Page 8: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Тестируемый код

int GetColumnIndex(string value):value != nullvalue != String.Emptyvalue.StartsWith("A", "B", "C", ...)value.EndsWith("1", "2", "3", ...)

Page 9: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Pex: параметри-зованные тесты

Демонстрация

Page 10: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Pex: выводы

Pex != замена «ручных» unit-тестовPex = анализ кода, поиск проблемных наборов аргументовPex = быстрое создание набора тестов для унаследованного кода

Page 11: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Дополнительная информация

Pex and Moles - Isolation and White box Unit Testing for .NET

http://research.microsoft.com/pex

Page 12: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Как установить?

Pex and Moles – Downloadshttp://research.microsoft.com/en-us/projects/pex/downloads.aspx

Academic (Free)Некоммерческое использованиеx86VS2008 и командная строка

MSDN Subscribersx86 и x64VS2008, VS2010 и командная строка

Page 13: Microsoft  Pex :  обзор

Microsoft TechDayshttp://www.techdays.ru

Контакты

Сергей ПоповE-mail: [email protected]Блог:http://sergeypopov.info/Twitter:http://twitter.com/psg1234