Support for Exploratory Testing and Enhanced Support for Unit Testing
Unit testing is a methodology of testing individual units of code to determine if those individual units work correctly. The term “units” refers to smallest units of testable code — generally a function or method. Visual Studio 11 provides support for enhanced unit testing and exploratory testing. Exploratory testing is a practice in which you test your code without the need of a formal test planning. You can also manage your exploratory testing sessions through the Microsoft Test Manager. It allows you to generate bug reports and the steps or actions that led to a failed test. Such steps are included in the bug report. Visual Studio 11 extends the ALM support introduced in Visual Studio 2010 with a better coverage of the application’s lifecycle and with the introduction of additional roles that are critical to a project’s success. Now you can use Visual Studio 11 to generate test cases that depend on the sequence of steps that caused the bug — a great feature indeed. You can learn more from the vNext ALM roadmap.
Enhanced Support for Application Lifecycle Management (ALM)
Application Lifecycle Management (ALM) enables you to better manage the entire lifecycle of an application using a set of proven processes and tools. The basic principles of ALM include, collaboration, feedback, transparent agile processes. Such tools are integrated in the Visual Studio IDE. Application Lifecycle Management support in Visual Studio has been a talked about feature for quite some time. It was introduced in Visual Studio 2010. The Visual Studio vNext ALM white paper states: “Software should be viewed as a living asset, with the Application Lifecycle representing a continuum across the connected activities of a products lifetime, spanning: the identification of business needs, software construction, release management and monitoring, support and maintenance, through to the eventual retirement of the solution.” Visual Studio 11 introduces Silverlight-powered Speakflow that you can use to follow the application cycle with better transparency.
You can download Visual Studio 11 Application Lifecycle Management Virtual Machine and explore this technology.
Support for IIS Express as the Default Integrated Web Server
ISS Express is a lightweight Web server. With Visual Studio 2010 SP1, you can build and run your applications using IIS Express or with Cassini, which was the default Web server for Visual Studio 2010 SP1.
In Visual Studio 11, the default Web server is IIS Express. If you navigate to Tools | Options | Projects and Solutions, and then Select “Web Projects” in the Visual Studio 11 IDE you will see that the default Web server integrated in Visual Studio 11 is IIS Express for file based Web sites and projects. However you can still change the default Web server to Cassini by changing the configuration settings.
Figure 1: Changing the default Web server in the Visual Studio 11 IDE.
Support for Smart Tasks
Visual Studio 11 introduces a new feature called a smart task, which can be used to ease complex tasks and commonly used features. This feature wasn’t present in the earlier versions of Visual Studio. You can now configure controls from the IDE itself (i.e., the HTML editor). So you no longer need to move back and forth between source and design view of a control to configure.
Support for Local, Simulator, and Remote Debugging
Using Visual Studio 11 you can now debug your metro applications either locally or remotely. What you need to do is select Local machine or Remote on the Target Device option of Project Properties | Debug.
Event Handler Generation from Markup
Event handlers are methods that are triggered on occurrence of an event. If you use WPF and XAML, Visual Studio allows generating event handlers from your controls at design time in the XAML editor. You can generate event handlers for your controls from the XAML markup. But what about ASP.NET controls? In Visual Studio 11, you can now generate event handlers for ASP.NET Server Side controls the same way you do in XAML.
Support for Creating User Controls from Web Pages
One of the biggest advantages of user controls is reusability. Consider a situation where you have one or more Web pages that you would need elsewhere in your project — reuse the design. There is a new feature introduced in Visual Studio 11 — the ability to extract user controls out of your Web pages. This is a great feature indeed. You can now simply select the portion of HTML markup that you would like to be extracted to a user control. To do this, you would need to go to your HTML markup, select the needed markup code, right-click, and select the option “Extract to User Control” from the list of options displayed.