st louis day of.net 2011 unit testing patterns and anti-patterns steve bohlen senior software...

25
St Louis Day of .NET 2011 Unit Testing Patterns and Anti- Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: [email protected] Blog: http://blog.unhandled-exceptions.com Twitter: @sbohlen

Upload: reynold-turner

Post on 23-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Unit Testing Patterns and Anti-Patterns

Steve BohlenSenior Software EngineerSpringSource/VMware

E-Mail: [email protected]: http://blog.unhandled-exceptions.comTwitter: @sbohlen

Page 2: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:
Page 3: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Do I suck?Let me (and the world) know!

http://spkr8.com/t/8096

Page 4: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Steve BohlenNearly 20 years developing softwareLISP, Delphi, C/C++, VB, VB.NET, C#Senior Engineer Springsource/VMwareCo-Founder, NYC Alt.Net User Group

http://nyalt.netCo-Organizer, NYC DDD User Group

http://dddnyc.orgContributor: various OSS projects

Nhibernate http://www.nhforge.orgNDbUnit http://www.googlecode.com/ndbunitSpring.NET http://www.springframework.net

blog: http://blog.unhandled-exceptions.come-mail: [email protected]: @sbohlen

CYND D D

Page 5: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

RAD Controls for ASP.NET AJAX

RAD Controls for Silverlight

RAD Controls for Windows Phone

RAD Controls for Winforms

RAD Controls for WPF

Telerik Reporting

Telerik OpenAccess ORM

Telerik JustCode

Telerik JustMock

Telerik Extensions for ASP.NET MVC

Test Studio Express

Telerik TeamPulse

Telerik Test Studio

Sitefinity CMS

Telerik JustDecompile

C#/VB.NET Converter

ASPX to Razor Converter

Page 6: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Page 7: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Page 8: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Definition: Pattern

In software engineering, a design pattern is a general reusable solution to a commonly occurring problem in software design.that leads to commonly occurring problems in software design.

Anti-

Anti-

Page 9: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Page 10: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Page 11: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Running Tests

Page 12: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Speedy Tests

Page 13: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Naming Tests

Page 14: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Descriptive Assertions

Page 15: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Repetition

Page 16: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: False Positives

Page 17: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Faked Out!

Page 18: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Maintenance

Page 19: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Testing Exceptions

Page 20: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Test Coverage

Page 21: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Organizing Tests

Page 22: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Data Dependency

Page 23: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

Challenge: Multiple Assertions

Page 24: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

And now for something completely different…

…code!

Page 25: St Louis Day of.NET 2011 Unit Testing Patterns and Anti-Patterns Steve Bohlen Senior Software Engineer SpringSource/VMware E-Mail: sbohlen@gmail.com Blog:

St Louis Day of .NET 2011

fini

Steve BohlenSenior Software EngineerSpringSource/VMware

E-Mail: [email protected]: http://blog.unhandled-exceptions.comTwitter: @sbohlen

http://spkr8.com/t/8096