Real World Developer Testing

Slides:



Advertisements
Similar presentations
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Advertisements

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Preface Demo A Quick Thank You How Did We Do It?
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Windows 7 Training. Windows ® 7 Compatibility Session 0 Isolation Isolation of Windows 7 Services.
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
MIX 09 4/15/ :14 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Windows 7 Training Microsoft Confidential. Windows ® 7 Compatibility Version Checking.
Multitenant Model Request/Response General Model.
Announcing Demo Announcing.
Session 1.
travel Suru Windows 7 Release NET 4.0 / Surface 2.0 Release Multi-Touch Controls Multi-Touch API Surface Multi-Touch Controls & API Surface.
Built by Developers for Developers…. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
 Rico Mariani Architect Microsoft Corporation.
Feature: Assign an Item to Multiple Sites © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Connect with life Connect with life
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or.
Feature: Customer Combiner and Modifier © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.
demo Instance AInstance B Read “7” Write “8”

customer.
Real World Developer Testing with Visual Studio 2012 David Starr Chief Software Craftsman Scrum.org Peter Provost Program Manager Lead Microsoft AAP401.
demo © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names.
demo Demo.
demo QueryForeign KeyInstance /sm:body()/x:Order/x:Delivery/y:TrackingId1Z
projekt202 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are.
The CLR CoreCLRCoreCLR © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product.
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks.
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or.

MIX 09 4/17/2018 4:41 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
9/11/2018 5:53 PM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Возможности Excel 2010, о которых следует знать
Title of Presentation 11/22/2018 3:34 PM
Title of Presentation 12/2/2018 3:48 PM
Using Windows Runtime and SDK to build Metro style apps
Brian Keller Sr. Technical Evangelist Microsoft Session Code: DEV310
Deep Dive into the Team Foundation Server 2012 Agile Planning Tools
Compile and Execute Requirements in Microsoft .NET
1/3/2019 1:21 PM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Brian Keller Sr. Technical Evangelist Microsoft Session Code: DEV310
2/17/2019 7:32 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
From Development to Production: Optimizing for Continuous Delivery
Building SaaS Solutions on Windows Azure
Developing and Managing SharePoint Solutions with Visual Studio 2012
Using Windows Runtime and SDK to build Metro style apps
ASP.NET Roadmap: One ASP.NET – Web Forms, MVC, Web API, and more
Silverlight Debugging
8/04/2019 9:13 PM © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
4/27/17, Bell #8 What amount of net pay has been earned this period?
Windows 8 Security Internals
Виктор Хаджийски Катедра “Металургия на желязото и металолеене”
From Start to REST in 60 Minutes (DEV323)
PENSACOLA ENERGY WORK PLAN OCTOBER 10, 2016
Jason Zander Unplugged
5/1/2019 3:29 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Title of Presentation 5/12/ :53 PM
Шитманов Дархан Қаражанұлы Тарих пәнінің
Code First Development in Microsoft ADO.NET Entity Framework 4.1
Running Reporting Services in SharePoint Integrated Mode: How and Why
Developer Collaboration with Team Foundation Server 2012
Title of Presentation 5/24/2019 1:26 PM
5/24/2019 6:44 PM 1/8/18 Bell #10 In a world governed by the gods, is there any room for human will? Do human choices make a difference? EXPLAIN © 2007.
Title of Presentation 7/24/2019 8:53 PM
What’s New in Visual Studio 2012 for Web Developers
5/6/19, Bell #6 12/11/2019 8:26 PM Explain the relationship between this picture and the events that took place in Chapter 7 in Animal Farm. © 2007 Microsoft.
Presentation transcript:

Real World Developer Testing 12/3/2018 11:15 PM AAP401 Real World Developer Testing David Starr Chief Software Craftsman Scrum.org Peter Provost Program Manager Lead Microsoft © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

About Us David Starr Peter Provost Chief Software Craftsman, Scrum.org Visual Studio ALM MVP ElegantCode.com founder david@scrum.org @elegantcoder The guy who makes cool Agiley stuff in Visual Studio Peter.Provost@microsoft.com peterprovost.org @pprovost

Today’s Discussion Dealing with Ugly Dependencies Testing at the Skin Model View Separation General Substitution Challenges Events Threads

Ugly Dependencies

Ugly Dependencies

Testing the Top Only by testing the UI do I know that everything under it works. Scott Schimanski, Test Manager A Test

Things found on top XAML JavaScript We combat this with MVC MVC MVVM Here XAML JavaScript We combat this with MVC MVC MVVM

Testing at the Top

Model View Separation Patterns MVP MVC View Model View Model Presenter Controller MVVM View ViewModel Model

Model View Separation

General Substitution Challenges That’s not what I expected him to do.

General Substitution Challenges

Testing Events Did the event get raised? What is the last event that was raised? Did the sender send the right argument data? Does the event handler behave correctly?

Parallel and Threads Many patterns exist for multi-threading Task Parallel Library enables feats of strength Async and Await bring juice, too

Events and Threads

Packaging Patterns Relationships between projects affect test execution times Test execution times affect how often developers run tests

The Player Exe or Site Assembly A Assembly C Assembly B Test Project

Snake Eyes Unit Test Project 1 Exe or Site Integration Test Project 1 Assembly A Integration Test Project 2 Unit Test Proj 3 Assembly B Integration Test Project 3 Unit Test Project 4 Assembly C Integration Test Project 4

Monogamy Functional Test Project 1 Performance Test Project 2 Quality Specialists Functional Test Project 1 Performance Test Project 2 Security Test Project 3 Code Specialists Test Project 1 Exe or Site Test Project 2 Assembly A Test Project 3 Assembly B Test Project 4 Assembly C

Things that grow Teams The thing we’re making Test suites Integration effort Build times

Developer Testing Haiku Photo by Caitlin Regan Real world is messy Response is to isolate We drive us crazy

Thank you! David Starr david@scrum.org Blog: elegantcode.com @elegantcoder Peter Provost Peter.Provost@microsoft.com Blog: peterprovost.org @pprovost

Related Content Breakout Sessions DEV214 Introducing the New Visual Studio 11 Unit Testing Experience DEV411 Testing Un-testable Code with Fakes in Visual Studio 2012 AAP311 Compile & Execute Requirements in .NET Hands on Labs DEV17-HOL Explore the New Unit Testing and Code Clone Capabilities of Visual Studio 2012 Product Demo Stations DEV01-TLC Application Lifecycle Management (ALM)

Resources Learning TechNet http://europe.msteched.com Connect. Share. Discuss. http://europe.msteched.com Microsoft Certification & Training Resources www.microsoft.com/learning TechNet Resources for IT Professionals http://microsoft.com/technet Resources for Developers http://microsoft.com/msdn

Submit your evals online 12/3/2018 11:15 PM Evaluations Submit your evals online http://europe.msteched.com/sessions © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

12/3/2018 11:15 PM © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.