1 / 36

Visual Studio 2010 Diagnostics and Analysis Tools to Improve Software Quality

Visual Studio 2010 Diagnostics and Analysis Tools to Improve Software Quality.

ovid
Télécharger la présentation

Visual Studio 2010 Diagnostics and Analysis Tools to Improve Software Quality

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Visual Studio 2010 Diagnostics and Analysis Tools to Improve Software Quality As building software becomes more complex, the probability of exposing end-users to application defects increases exponentially. Software quality begins as soon as you start writing code. Improving code quality is the first line of offense in quality management. IntelliTrace™ extends and enhances the Visual Studio live debugging experience. Debugging with IntelliTrace provides an enhanced picture of your application compared with traditional debuggers. Test Impact Analyst will help you analyze the tests impacted as a result of a code change. These tests can be Unit Test or just Manual Tests. Multi-Tier Performance Analysis. Tier Interaction Profiling enables you to measure the performance of your application from a database interactions point of view. • Randy Pagels • Sr. Developer Technical Specialist • Microsoft Corporation • rpagels@microsoft.com • http://www.teamsystemcafe.net • Specialist covering Heartland • (MI, OH, KY, and TN) • Team Foundation Server • Visual Studio ALM tools • Visual Studio Test Professional • Lab Management

  2. Agenda • IntelliTrace™ • Test Impact Analysis • Multi-tier Performance Analysis • Solve Complex Debugging Tasks • Q & A

  3. Codename “Proteus” What is Proteus? • Is it an early blooming spring flower? • Is it an sea god, according to Greek Mythology? • Is it a planet in the Milky Way? • Is it the code name for Visual Studio 2010? The Answer • Intellitrace, previously called “Historical Debugging” • Record what the application does as it is running • Makes it easy to spot the bug • Record method calls with parameters • Get intellitrace logs from your F5 developer testing • Get intellitrace logs from your build server • Get intellitrace logs from your testers • Record / Trace testers execution • Use same source code to debug as the tester had to test

  4. IntelliTrace™ value add experiences • Testing - No more “no repro” • Integrated, Extensible Diagnostics • Rich Bugs, fix first time, every time • Intellitrace ss • Developer Experience – F5 • Historical Debugging from Dev machine • Play back events, forward & backward • Intellitrace • Build Automation - BVTs • Build Verification Test (BVT) test fails • View & Debug failed test results from build report • Intellitrace

  5. Eliminate “No-repro” Bugs Write Code Hand-offto Test Test Code File Bug Hand-offto Dev Verify Bug Resolve as “No Repro”

  6. What is IntelliTrace? Today + = Application Instrumentation Log File IntelliTrace • Record • Playback • Rewind = + = IntelliTrace

  7. IntelliTrace™ Developer F5 debugging Build Verification Test (BVT) test failures Manual Test failures

  8. Number #1 FAQ about IntelliTrace “Can I use IntelliTrace in production?” Short answer: NO!

  9. IntelliTrace in Production From the Microsoft Visual Studio 2010 Licensing White Paper(page 17): • The IntelliTraceadapter and/or IntelliTrace.exe cannot be used: • On a device or server in a production environment. • For purposes of system or application monitoring. • In non-interactive scenarios other than as part of an automated test or debugging-data collection session.

  10. Number #2 FAQ about IntelliTrace Does IntelliTrace support 64-bit? Short answer: NO! And YES!

  11. IntelliTrace 64-bit Support • 64-bit is supported for: • Running IntelliTrace from the command line • Integration with Microsoft Test Manager • Integration with Lab Management • 64-bit is not supported for • F5 debugging

  12. IntelliTrace Capabilities • Code is instrumented dynamically • Records program execution flow • Method Enter & Exit • Records program data • Parameters • Return values • Low overhead for collection • Supports Dev, Test and Staging environments • Pay-as-you-go collection model • 1st class debugging experience in VS

  13. Using IntelliTrace from the CMD Line • Four steps: • XCopy IntelliTrace.exe and supporting files to any location on the target machine • C:\Program Files\Microsoft Visual Studio 10.0\Team Tools\TraceDebugger Tools • On the target machine, open a Command prompt with elevated privilege • Run IntelliTrace.exe on the target machine to collect *.itrace file • IntelliTrace launch /collectionplan:en\CollectionPlan.xml /logfile:HelloWorld.itrace HelloWorld.exe • Open *.itrace file in Visual Studio to debug

  14. How IntelliTrace Works Application IntelliTrace Recorder (IntelliTrace.exe) CollectionPlan.xml IntelliTrace File

  15. Using IntelliTrace to debug Windows Azure Cloud Services A B Package IntelliTrace logs from the web and worker host processes in the cloud and start the deployment process Enable IntelliTrace for .Net 4 apps C D Now simply view the Intellitrace logs Windows Azure Compute Explorer indicates whether a deployment has IntelliTraceenabled on Hosted Services

  16. Codename “Aftershock” What is Aftershock? • Is it a rock band? • Is it a type of basketball shoe? • Is it a luxury women's clothing brand? • Is a liqueur drink produced in Canada? • Is it the code name for Visual Studio 2010? The Answer • Test Impact Analysis • A list of impacted tests • A list of changed methods with unit tests • A list of changed tests with methods

  17. Choose the right tests

  18. Choosing the Right TestsThe Problem Q: Which tests should the developer and tester run to verify this code change? Automated Tests only Manual Tests only All of the above Don’t know Trick question?? Code Change Δ Application Functionality

  19. Choosing the Right TestsThe Consequence The world of Developers The world of Testers Verify more tests than needed Verify too few tests than needed • Run more tests than needed • Run too few tests than needed • Less Productivity • Effort wasted on tests that don’t need to be run • Lower quality • Not enough testing to verify code change

  20. What is Test Impact Analysis? • Automatically pinpoint which tests are impacted as a result of a code change What is the impact of this bug fix?

  21. Test Impact Analysis A One Line Bug Fix Build Report Manual Testing with Test Manager

  22. How Test Impact Analysis Works B A TFS Microsoft Test Manager Team Build Test Impact View Manual Impacted Tests C Automated Impacted Tests Team Build Report

  23. Multi-Tier Performance Analysis Client-side Script Database calls

  24. Multi-Tier Performance Analysis Developer: “I wonder where the problem could be???” User: “Why is it taking so long to load the Orders page?” Back End? Front End? Mid Tier?

  25. Multi-Tier Performance Analysis

  26. Tier Interaction Profiling Performance Analysis Across Multiple Tiers

  27. Solve Complex Debugging Tasks

  28. Advanced Debugging Debugging a Crash using Dump Files Data Tips with Export

  29. Dump File Summary Page Dump file summary information IL Interpreter for managed property evaluation Operating system and CLR version information Search modules Support for mixed-mode dump files Module Information

  30. DataTips Pin the DataTip to the source code DataTip stays in sync with the source code Toolbar allows the user to pin/unpin a DataTip Context menu for managing values/expressions in the DataTip DataTip changes color to indicate it is a floating window Floating DataTips can be dragged anywhere, and can’t be pinned unless over source code Space provided for comments in the DataTip which can be collapsed/expanded as desired

  31. Visual Studio 2010 Ultimate • Provides everything in one box • IntelliTrace® • Microsoft® Test Manager 2010 • Architecture and modeling tools Lab Management is part of Visual Studio 2010 Ultimate and Test Professional 2010 for MSDN subscribers

  32. © 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.

  33. Appendix

  34. Visual Studio 2010

  35. Test Manager 2010 UML Modeling Performance Profiling Manual Testing Layer Diagram Load Testing Web Testing Test Case Management IntelliTrace™ Architecture Explorer Logical Class Designer Cloud Development Office Development Windows Development New WPF Editor Customizable IDE Multi-core Development Silverlight Tools Web Development SharePoint Development Generate from Usage Static Code Analysis Database Deployment Code Metrics Database Unit Testing Test Data Generation Test Impact Analysis UI Test Automation Code Coverage Database Change Mgmt Fast Forward for Manual Testing

  36. Test Manager 2010 Gated Check-in Test Case Management Manual Testing Lab MgmtConfig. Checkpoint Environment Environment from Template Virtual Env. Setup/Tear Down Team Explorer Team Agents Reporting Team Portal Test Case Management Branch Visualization Version Control Build Automation Agile Planning Tools Fast Forward for Manual Testing

More Related