<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Visual Studio Lab Management team blog</title><subtitle type="html" /><id>http://blogs.msdn.com/lab_management/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/lab_management/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2009-06-02T06:36:00Z</updated><entry><title>TFS 2010 Best Practice Analyser Beta2 is now available</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/12/02/tfs-2010-best-practice-analyser-beta2-is-now-available.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/12/02/tfs-2010-best-practice-analyser-beta2-is-now-available.aspx</id><published>2009-12-02T17:38:00Z</published><updated>2009-12-02T17:38:00Z</updated><content type="html">&lt;meta name="ProgId" content="Word.Document"&gt;
&lt;meta name="Generator" content="Microsoft Word 14"&gt;
&lt;meta name="Originator" content="Microsoft Word 14"&gt;&lt;link href="file:///C:%5CUsers%5Charis%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml" rel="File-List" mce_href="file:///C:%5CUsers%5Charis%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml"&gt;&lt;link href="file:///C:%5CUsers%5Charis%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx" rel="themeData" mce_href="file:///C:%5CUsers%5Charis%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx"&gt;&lt;link href="file:///C:%5CUsers%5Charis%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml" rel="colorSchemeMapping" mce_href="file:///C:%5CUsers%5Charis%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml"&gt;
&lt;style&gt;





&lt;!--
 /* Font Definitions */
 @font-face
	{font-family:calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;
	mso-font-alt:"Times New Roman";
	mso-font-charset:0;
	mso-generic-font-family:swiss;
	mso-font-pitch:variable;
	mso-font-signature:-520092929 1073786111 9 0 415 0;}
 /* Style Definitions */
 p.msonormal, li.msonormal, div.msonormal
	{mso-style-unhide:no;
	mso-style-qformat:yes;
	mso-style-parent:"";
	margin:0cm;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";
	mso-ascii-font-family:calibri;
	mso-ascii-theme-font:minor-latin;
	mso-fareast-font-family:calibri;
	mso-fareast-theme-font:minor-latin;
	mso-hansi-font-family:calibri;
	mso-hansi-theme-font:minor-latin;
	mso-bidi-font-family:"Times New Roman";
	mso-bidi-theme-font:minor-bidi;
	mso-fareast-language:en-us;}
a:link, span.msohyperlink
	{mso-style-priority:99;
	color:blue;
	mso-themecolor:hyperlink;
	text-decoration:underline;
	text-underline:single;}
a:visited, span.msohyperlinkfollowed
	{mso-style-noshow:yes;
	mso-style-priority:99;
	color:purple;
	mso-themecolor:followedhyperlink;
	text-decoration:underline;
	text-underline:single;}
p
	{mso-style-noshow:yes;
	mso-style-priority:99;
	mso-margin-top-alt:auto;
	margin-right:0cm;
	mso-margin-bottom-alt:auto;
	margin-left:0cm;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	font-family:"Times New Roman","serif";
	mso-fareast-font-family:"Times New Roman";}
span.emailstyle16
	{mso-style-type:personal;
	mso-style-noshow:yes;
	mso-style-unhide:no;
	mso-ansi-font-size:11.0pt;
	mso-bidi-font-size:11.0pt;
	font-family:"Calibri","sans-serif";
	mso-ascii-font-family:calibri;
	mso-ascii-theme-font:minor-latin;
	mso-fareast-font-family:calibri;
	mso-fareast-theme-font:minor-latin;
	mso-hansi-font-family:calibri;
	mso-hansi-theme-font:minor-latin;
	mso-bidi-font-family:"Times New Roman";
	mso-bidi-theme-font:minor-bidi;
	color:windowtext;}
.msochpdefault
	{mso-style-type:export-only;
	mso-default-props:yes;
	font-family:"Calibri","sans-serif";
	mso-ascii-font-family:calibri;
	mso-ascii-theme-font:minor-latin;
	mso-fareast-font-family:calibri;
	mso-fareast-theme-font:minor-latin;
	mso-hansi-font-family:calibri;
	mso-hansi-theme-font:minor-latin;
	mso-bidi-font-family:"Times New Roman";
	mso-bidi-theme-font:minor-bidi;
	mso-fareast-language:en-us;}
@page wordsection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;
	mso-header-margin:36.0pt;
	mso-footer-margin:36.0pt;
	mso-paper-source:0;}
div.wordsection1
	{page:wordsection1;}
 /* List Definitions */
 @list l0
	{mso-list-id:282420566;
	mso-list-type:hybrid;
	mso-list-template-ids:-803440720 1074331663 1074331673 1074331675 1074331663 1074331673 1074331675 1074331663 1074331673 1074331675;}
@list l0:level1
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level2
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level3
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level4
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level5
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level6
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
@list l0:level7
	{mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level8
	{mso-level-number-format:alpha-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	text-indent:-18.0pt;}
@list l0:level9
	{mso-level-number-format:roman-lower;
	mso-level-tab-stop:none;
	mso-level-number-position:right;
	text-indent:-9.0pt;}
ol
	{margin-bottom:0cm;}
ul
	{margin-bottom:0cm;}
--&gt;&lt;/style&gt;

&lt;p class="MsoNormal"&gt;&lt;font face="Calibri"&gt;&lt;b&gt;Team Foundation Server Best Practice Analyser&lt;/b&gt; (BPA) a diagnostic tool (released as part of &lt;i&gt;TFS 2010 Power Tools&lt;/i&gt;) is now available for public download; see Brian Harry’s &lt;/font&gt;&lt;a href="http://blogs.msdn.com/bharry/archive/2009/12/01/tfs-2010-power-tools-are-available.aspx" mce_href="http://blogs.msdn.com/bharry/archive/2009/12/01/tfs-2010-power-tools-are-available.aspx" tooltip="linkalert-tip"&gt;&lt;font face="Calibri"&gt;post&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri"&gt; on the announcement. You can download it from the &lt;/font&gt;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/en-us/0e69a28f-020c-488b-80b3-f4c89a20621d" target="_blank"&gt;&lt;font face="Calibri"&gt;MSDN Visual Studio Gallery&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri"&gt;. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;font face="Calibri"&gt;&lt;b&gt;Lab Management checks are now also integrated with the BPA&lt;/b&gt;. So when you do a BPA scan against your TFS 2010 deployment, various Lab Management resources are&amp;nbsp; verified if they are configured according to the recommended best practices.&lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="font-family: 'Calibri','sans-serif'; font-size: 11pt;"&gt;&lt;font size="3"&gt;Gathers Lab Management configuration information from the TFS&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="font-family: 'Calibri','sans-serif'; font-size: 11pt;"&gt;&lt;/span&gt;&lt;span style="font-family: 'Calibri','sans-serif'; font-size: 11pt;"&gt;&lt;font size="3"&gt;Performs specific tests on the System Center Virtual Machine Manager (SCVMM) Server configured for Lab Management&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="font-family: 'Calibri','sans-serif'; font-size: 11pt;"&gt;&lt;/span&gt;&lt;span style="font-family: 'Calibri','sans-serif'; font-size: 11pt;"&gt;&lt;font size="3"&gt;Performs various checks on the Hyper-V Hosts, Library Servers and Test Controllers added to a Project collection&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="font-family: 'Calibri','sans-serif'; font-size: 11pt;"&gt;&lt;/span&gt;&lt;span style="font-family: 'Calibri','sans-serif'; font-size: 11pt;"&gt;&lt;font size="3"&gt;Analyses the collected information according to specific rules and reports the findings as information, warning, or error messages&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoNormal"&gt;&lt;span style="font-family: 'Calibri','sans-serif'; font-size: 11pt;"&gt;&lt;/span&gt;&lt;span style="font-family: 'Calibri','sans-serif'; font-size: 11pt;"&gt;&lt;font size="3"&gt;Provides links to documentation articles to resolve warning and error messages&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p class="MsoNormal"&gt;&lt;font face="Calibri"&gt;For discussion on Power tools, visit the &lt;/font&gt;&lt;a href="http://social.msdn.microsoft.com/Forums/en-US/tfspowertools/threads" mce_href="http://social.msdn.microsoft.com/Forums/en-US/tfspowertools/threads" tooltip="linkalert-tip"&gt;&lt;font tooltip="linkalert-tip" face="Calibri"&gt;Team Foundation Server – Power Tools &amp;amp; Add-ons&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri"&gt; forum. If you find a bug or would like to make a suggestion for future versions, please report on &lt;/font&gt;&lt;a href="https://connect.microsoft.com/VisualStudio" mce_href="https://connect.microsoft.com/VisualStudio" tooltip="linkalert-tip"&gt;&lt;font tooltip="linkalert-tip" face="Calibri"&gt;Connect site&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri"&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;font face="Calibri"&gt;--&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;font face="Calibri"&gt;The Lab Management team&lt;/font&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9931518" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author><category term="lab management" scheme="http://blogs.msdn.com/lab_management/archive/tags/lab+management/default.aspx" /><category term="releases" scheme="http://blogs.msdn.com/lab_management/archive/tags/releases/default.aspx" /><category term="Beta2" scheme="http://blogs.msdn.com/lab_management/archive/tags/Beta2/default.aspx" /><category term="BPA" scheme="http://blogs.msdn.com/lab_management/archive/tags/BPA/default.aspx" /><category term="diagnostics" scheme="http://blogs.msdn.com/lab_management/archive/tags/diagnostics/default.aspx" /></entry><entry><title>Time for feedback about Beta 2</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/12/02/time-for-feedback-about-beta-2.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/12/02/time-for-feedback-about-beta-2.aspx</id><published>2009-12-02T12:46:53Z</published><updated>2009-12-02T12:46:53Z</updated><content type="html">&lt;p&gt;It has been almost 6 weeks since Visual Studio 2010 Beta 2 was released. Some of you have already upgraded your live TFS and started using test and lab management with your teams and gave us specific feedback, which we are taking seriously and incorporating in the product. Some of you were more quiet…&lt;/p&gt;  &lt;p&gt;We would like to get your current status and feedback about Beta 2, and specifically about Lab Management. We’ve create a short survey and it will be really helpful if you can take 5-10 minutes to respond to it. It is OK to answer the survey if you are still in the stage of setting up lab and have not completed it yet.&lt;/p&gt;  &lt;p&gt;The survey is available here: &lt;b&gt;&lt;a href="http://www.surveymonkey.com/s/68N2FCD"&gt;http://www.surveymonkey.com/s/68N2FCD&lt;/a&gt; &lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Thanks in advance,&lt;/p&gt;  &lt;p&gt;The Lab Management team&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9931379" width="1" height="1"&gt;</content><author><name>shayman</name><uri>http://blogs.msdn.com/members/shayman.aspx</uri></author></entry><entry><title>Network isolation on Windows Server 2008 R2 hosts</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/11/26/network-isolation-on-windows-server-2008-r2-hosts.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/11/26/network-isolation-on-windows-server-2008-r2-hosts.aspx</id><published>2009-11-26T17:16:00Z</published><updated>2009-11-26T17:16:00Z</updated><content type="html">&lt;P&gt;Network isolation does not work on Windows Server 2008 R2 hosts if you are using Beta2 version of Visual Studio Team Lab Management.&amp;nbsp;When you create an environment with network isolation on a 2008 R2 host and start it, you will get the following error:&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-ansi-language: EN-US" lang=EN-US&gt;&lt;EM&gt;Network isolation timed out. Last known status: Acquiring external IP for the Lab system from DHCP. Pause and start the environment to retry the operation. If the problem persists, shutdown and start the environment.&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;The root cause of this is a MAC spoofing issue in SCVMM. SCVMM has a QFE to fix the problem (&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-IN; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;A href="http://support.microsoft.com/kb/976244" mce_href="http://support.microsoft.com/kb/976244"&gt;http://support.microsoft.com/kb/976244&lt;/A&gt;).&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;The&amp;nbsp;QFE needs to be applied on the VMM server.&amp;nbsp;If you are using Beta2 of Team Lab Management, and if you apply the QFE, you will see a slight improvement in how network isolation works on Windows Server 2008 R2 hosts. For instance, you will&amp;nbsp;be able to start&amp;nbsp;a network isolated environment and get the network isolation capability to become 'ready'. However, when you restore that environment to a snapshot or do other complex stuff, network isolation will still not work.&lt;/P&gt;
&lt;P&gt;To get network isolation to fully work on 2008 R2 hosts, you will will have to not only install the SCVMM QFE but wait for the RC version of Visual Studio Team Lab Management! Meanwhile, with Beta2 version, network isolation works just fine on Windows Server 2008 SP2 hosts.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9929150" width="1" height="1"&gt;</content><author><name>vijaym</name><uri>http://blogs.msdn.com/members/vijaym.aspx</uri></author><category term="Microsoft" scheme="http://blogs.msdn.com/lab_management/archive/tags/Microsoft/default.aspx" /><category term="lab management" scheme="http://blogs.msdn.com/lab_management/archive/tags/lab+management/default.aspx" /><category term="ALM" scheme="http://blogs.msdn.com/lab_management/archive/tags/ALM/default.aspx" /><category term="Virtual Environment" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+Environment/default.aspx" /><category term="Virtual Machine" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+Machine/default.aspx" /><category term="Virtual Test lab" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+Test+lab/default.aspx" /><category term="Environments" scheme="http://blogs.msdn.com/lab_management/archive/tags/Environments/default.aspx" /><category term="Virtual Machines" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+Machines/default.aspx" /><category term="MAC Spoofing" scheme="http://blogs.msdn.com/lab_management/archive/tags/MAC+Spoofing/default.aspx" /><category term="Network isolation" scheme="http://blogs.msdn.com/lab_management/archive/tags/Network+isolation/default.aspx" /><category term="Windows Server 2008 R2" scheme="http://blogs.msdn.com/lab_management/archive/tags/Windows+Server+2008+R2/default.aspx" /><category term="Beta2" scheme="http://blogs.msdn.com/lab_management/archive/tags/Beta2/default.aspx" /></entry><entry><title>Building VMs out of the downloadable Win2k8R2 vhds</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/11/23/building-vms-out-of-the-downloadable-win2k8r2-vhds.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/11/23/building-vms-out-of-the-downloadable-win2k8r2-vhds.aspx</id><published>2009-11-23T17:06:42Z</published><updated>2009-11-23T17:06:42Z</updated><content type="html">&lt;p&gt;This posts walks you through how to create VMs from the Win2K8R2 vhds you can download from &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9040a4be-c3cf-44a5-9052-a70314452305&amp;amp;displaylang=en"&gt;here.&lt;/a&gt; If you are an SCVMM / Hyper-V expert, you can skip this section.&lt;/p&gt;  &lt;p&gt;Launch the downloaded exe&lt;/p&gt;  &lt;table border="1"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td&gt;         &lt;pre&gt;&lt;b&gt;&lt;span style="color: rgb(0,0,160)"&gt;C:\vmimages&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;i&gt;&lt;span style="color: rgb(164,0,0)"&gt;&amp;quot;Windows Server 2008 R2 Enterprise Evaluation (Full Edition).exe&amp;quot;&lt;/span&gt;&lt;/i&gt;&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p&gt;Extract the image to your MSSCVMMLibrary and make two copies (one for the TFS and another for the test machine)&lt;/p&gt;

&lt;table border="1"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;
        &lt;pre&gt;c:\ProgramData\Virtual Machine Manager Library Files\VHDs&amp;gt;dir
 Volume in drive C has no label.
 Volume Serial Number is 2EA8-7235

 Directory of c:\ProgramData\Virtual Machine Manager Library Files\VHDs

11/21/2009  07:07 AM    &amp;lt;DIR&amp;gt;          .
11/21/2009  07:07 AM    &amp;lt;DIR&amp;gt;          ..
10/30/2008  12:39 PM           125,440 Blank Disk - Large.vhd
10/30/2008  12:39 PM            35,328 Blank Disk - Small.vhd
08/10/2009  07:11 AM     6,939,326,464 TestW2KR2.vhd
08/10/2009  07:11 AM     6,939,326,464 TFSW2K8R2.vhd&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p align="justify"&gt;Go to the “Library” tab in the SCVMM admin console (bottom left), click on the library server and select refresh. This will bring the vhd’s you copied just now to the library immediately. (The library by default gets refreshed once an hour). &lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_4.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_thumb_1.png" width="244" height="176" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Go to the “Virtual Machines” tab (bottom left) in the SCVMM admin console and select “New virtual machine” (top right). Select the “TestW2K8R2.vhd”&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_6.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_thumb_2.png" width="644" height="276" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Give the VM a name&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_8.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_thumb_3.png" width="644" height="298" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Change RAM to 1GB, and Connect it to network&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_10.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_thumb_4.png" width="644" height="282" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Select the right OS flavor&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_12.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_thumb_5.png" width="644" height="290" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;and “select start after deploying it to the host”.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_14.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/BuildingVMsoutofthedownloadableWin2k8R2v_6E60/image_thumb_6.png" width="644" height="454" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Follow the same steps for the TFS VM also, but change the RAM to 2048MB and deploy it. Do not select the “start after deploying it to host” – as both will have the same names and will create collision.&lt;/p&gt;

&lt;p&gt;These vhds are created by a process called “sysprep”, and when you start the VMs they go through the “specialization” process to create unique machine SIDs, plug-n-play detection, activation resets etc. Once the 1st VM is up, connect to the VM and logon. The &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9040a4be-c3cf-44a5-9052-a70314452305&amp;amp;displaylang=en" target="_blank"&gt;web page&lt;/a&gt; from where you downloaded the VHDs has the password.&lt;/p&gt;

&lt;table border="1"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;
        &lt;pre&gt;To logon to the machine, use the following credentials: 
Username: administrator, password: Pass@word1 (Administrator account)&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p&gt;Change the machine name, join it to a domain, enable remote desktop on it, activate windows, add a domain account as administrator on the box, download and install the latest patches and reboot.&lt;/p&gt;

&lt;p&gt;Launch the TFS VM now, and go through the same motions described above.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9927375" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author></entry><entry><title>Getting started with Lab Management (Part 4)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/11/23/getting-started-with-lab-management-part-4.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/11/23/getting-started-with-lab-management-part-4.aspx</id><published>2009-11-23T17:04:08Z</published><updated>2009-11-23T17:04:08Z</updated><content type="html">&lt;p align="justify"&gt;In the last post, we created the “system under test” and ensured that the TCM server has information on how to run these tests in a test environment. This post explains how to get the tests run automatically as part of a scheduled build / deploy / test workflow.&lt;/p&gt;  &lt;h4&gt;&lt;/h4&gt;  &lt;h4&gt;Creating the deployment script&lt;/h4&gt;  &lt;p align="justify"&gt;The first step is to create a deployment script that can deploy the build and tests from a build drop location to the virtual environment. Let us create a batch script file called “deploy.cmd”. The script below works on IIS7. IIS6 users would have to make changes to use iisvdir.vbs rather than the appcmd used below. Add the deploy.cmd to the calculator application and check it in.&lt;/p&gt;  &lt;table border="1"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td&gt;         &lt;p&gt;set RemotePath=%1            &lt;br /&gt;set LocalPath=%SystemDrive%\Calculator &lt;/p&gt;          &lt;p&gt;if not exist %RemotePath% (            &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; echo remote path %RemotePath% doesn't exist             &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; goto Error             &lt;br /&gt;)             &lt;br /&gt;if exist %LocalPath% (             &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; rmdir /s /q %LocalPath%             &lt;br /&gt;) &lt;/p&gt;          &lt;p&gt;REM Copy files to the local machine            &lt;br /&gt;mkdir %LocalPath%             &lt;br /&gt;copy /y %RemotePath%\* %LocalPath%\.             &lt;br /&gt;xcopy /cseirhdzv %RemotePath%\_PublishedWebsites\Calc %LocalPath%             &lt;br /&gt;@echo Copied the build locally &lt;/p&gt;          &lt;p&gt;REM Configure IIS and ASP.NET            &lt;br /&gt;%windir%\system32\inetsrv\appcmd add app /site.name:&amp;quot;Default Web Site&amp;quot; /path:/Calc /physicalpath:%LocalPath%             &lt;br /&gt;@echo added new IIS VDir             &lt;br /&gt;%windir%\system32\inetsrv\appcmd set app &amp;quot;Default Web Site/Calc&amp;quot; /applicationPool:&amp;quot;ASP.NET v4.0&amp;quot;             &lt;br /&gt;@echo set the app pool to run under ASP.NET v4.0 &lt;/p&gt;          &lt;p&gt;icacls %LocalPath% /grant &amp;quot;BUILTIN\IIS_IUSRS:(OI)(CI)(F)&amp;quot;            &lt;br /&gt;icacls %SystemRoot%\ServiceProfiles\NetworkService\AppData\Local\VSEQT /grant &amp;quot;BUILTIN\IIS_IUSRS:(OI)(CI)(F)&amp;quot; &lt;/p&gt;          &lt;p&gt;:Success            &lt;br /&gt;echo Deploy succeeded             &lt;br /&gt;exit /b 0 &lt;/p&gt;          &lt;p&gt;:Error            &lt;br /&gt;echo Deploy failed             &lt;br /&gt;exit /b 1&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;h4&gt;Configure the build drop location:&lt;/h4&gt;  &lt;p&gt;Create drop directory where the output of build will go to, and provide permissions to accounts to write to the location. &lt;/p&gt;  &lt;table border="1"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td&gt;         &lt;pre&gt;&lt;b&gt;&lt;span style="color: rgb(0,0,160)"&gt;C:\&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;i&gt;&lt;span style="color: rgb(164,0,0)"&gt;type .\configdrop.cmd&lt;/span&gt;&lt;/i&gt;
@echo off
md drops
net share drops=c:\drops
icacls c:\drops /grant &amp;quot;NT AUTHORITY\Network Service:(OI)(CI)(F)&amp;quot;
@echo Granted permission to Network Service

:nextmachine
if &amp;quot;%2&amp;quot;==&amp;quot;&amp;quot; goto end
icacls c:\drops /grant &amp;quot;%1\%2$:(OI)(CI)(F)&amp;quot;
@echo Granted permission to %1\%2$
shift /2
goto nextmachine

:end
@echo all done

&lt;b&gt;&lt;span style="color: rgb(0,0,160)"&gt;C:\&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;i&gt;&lt;span style="color: rgb(164,0,0)"&gt;.\configdrop.cmd fareast varadab2tfs varadab2vm1&lt;/span&gt;&lt;/i&gt;
……&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;h4&gt;Create the build definition: &lt;/h4&gt;

&lt;p&gt;Back in Visual Studio, go to Team Explorer, and create a “new build definition”. This build definition will be used to compile the solution.&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image371.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb31" border="0" alt="image_thumb31" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_thumb31_44644f8e-46c9-461f-9043-fc499e7bebb8.png" width="449" height="392" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;In the build defaults, configure the build drop location to use the drop location we created&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image46.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb42" border="0" alt="image_thumb42" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_thumb42_3147eaef-0906-4b44-b2a2-5bf7118f2b95.png" width="644" height="271" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the Process tab, select the agent to use to do the compilation as the agent in the TFS machine. (This requirement has been removed post Beta 2). Set the solution to build and remove running the unit tests as part of the build experience.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/Capture.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Capture" border="0" alt="Capture" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/Capture_thumb.png" width="644" height="387" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Call the build definition “Calculator – Build” and save the build definition. This is used to build the solution.&lt;/p&gt;

&lt;h4&gt;Create the E2E workflow definition: &lt;/h4&gt;

&lt;p&gt;Now that we have a build definition which can be used to build the solution, we will wrap that in a end to end definition which will build the solution, deploy it to the VM, test it and report the results.&lt;/p&gt;

&lt;p align="justify"&gt;Create another build definition “Calculator – E2E” and after choosing the same set of entries, change the process tab to select “LabDefaultTemplate.xaml”&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image71.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb68" border="0" alt="image_thumb68" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_thumb68_bd6e8e46-6d53-4475-b0f4-0be2282decf1.png" width="648" height="228" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;And click on the button associated with workflow settings.&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image62.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb58" border="0" alt="image_thumb58" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_thumb58_d70eff2b-4807-459f-a73e-14013e6e0eee.png" width="648" height="371" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Select the environment and the clean check point to revert to. The clean checkpoint helps avoid machine taint issues when running your tests, and thus is highly recommended.&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image721.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image72_thumb" border="0" alt="image72_thumb" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image72_thumb_632c1126-c739-4f48-a5f9-25ac98257e16.png" width="648" height="467" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Use the “Calculator – Build” definition that we created before. This definition is used to build the solution.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_6.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_thumb_2.png" width="644" height="463" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;On the deploy tab, we are telling the system, how to bootstrap the environment with the latest bits. We are using the Deploy.cmd we created earlier to deploy the bits to the VM. &lt;/p&gt;

&lt;p&gt;Also note that I am taking a snapshot post the deployment. There are many scenarios where a bug is reported on a particular build. It is easy for a developer to restore to that build, and start debugging. A link to the snapshot file gets stored in the path provided. (&lt;a href="file://\\varadab2tfs\drops"&gt;\\varadab2tfs\drops&lt;/a&gt; – in my case)&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_4.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_thumb_1.png" width="644" height="445" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;We select the tests, the plan, configuration and settings and finish.&lt;/p&gt;

&lt;h4&gt;Queue the workflow: &lt;/h4&gt;

&lt;p&gt;Select the E2E template and “Queue New Build…”&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_7.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_thumb.png" width="420" height="411" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p align="justify"&gt;And you should see that as part of the queued build, the latest solution is built (by the Calculator – Build definition), environment is restored to the clean snapshot, bits are deployed to the environment using our deployment script, a snapshot is taken post the deployment, our unit tests are run and the results are available for you to analyze in the “Microsoft Test and Lab Manager”. &lt;/p&gt;

&lt;p align="justify"&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_9.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart4_829A/image_thumb_3.png" width="615" height="484" /&gt;&lt;/a&gt;&amp;#160; &lt;br /&gt;&lt;/p&gt;

&lt;p align="justify"&gt;This concludes the series of getting started with lab. Let us know how your experiments with lab go.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9927371" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author></entry><entry><title>Getting started with Lab Management (Part 3)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/11/20/getting-started-with-lab-management-part-3.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="964554" href="http://blogs.msdn.com/lab_management/attachment/9925941.ashx" /><id>http://blogs.msdn.com/lab_management/archive/2009/11/20/getting-started-with-lab-management-part-3.aspx</id><published>2009-11-20T02:03:00Z</published><updated>2009-11-20T02:03:00Z</updated><content type="html">&lt;h4&gt;Configuring the “system under test” in VS&lt;/h4&gt;  &lt;p&gt;The system under test for the purpose of this walkthrough is a simple calculator web service with its unit tests.&lt;/p&gt;  &lt;p&gt;Start by creating a new team project in VS. Connect to the TFS server and create a team project (Labwalkthru). The solution is attached to the blog post. &lt;/p&gt;  &lt;p&gt;Calculator app:&lt;/p&gt;  &lt;pre style="border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 650px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px"&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  1: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; System.Web.Services;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  2: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  3: [WebService(Namespace = &amp;quot;&lt;span style="color: #8b0000"&gt;http://tempuri.org/&lt;/span&gt;&amp;quot;)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  4: [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  5: &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; CalculatorService : System.Web.Services.WebService
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  6: {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  7:     &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; CalculatorService()
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  8:     {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  9:     }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 10: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 11:     [WebMethod]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 12:     &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; Add(&lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum1, &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum2)
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 13:     {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 14:         &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; lNum1 + lNum2;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 15:     }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 16: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 17:     [WebMethod]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 18:     &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; Subtract(&lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum1, &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum2)
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 19:     {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 20:         &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; lNum1 - lNum2;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 21:     }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 22: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 23:     [WebMethod]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 24:     &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; Multiply(&lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum1, &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum2)
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 25:     {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 26:         &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; lNum1 * lNum2;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 27:     }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 28: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 29:     [WebMethod]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 30:     &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; Divide(&lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum1, &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum2)
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 31:     {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 32:         &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; lNum1 / lNum2;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 33:     }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 34: }&lt;/pre&gt;&lt;/pre&gt;

&lt;p mce_keep="true"&gt;Test code:&lt;/p&gt;

&lt;pre style="border-bottom: #cecece 1px solid; border-left: #cecece 1px solid; padding-bottom: 5px; background-color: #fbfbfb; min-height: 40px; padding-left: 5px; width: 650px; padding-right: 5px; overflow: auto; border-top: #cecece 1px solid; border-right: #cecece 1px solid; padding-top: 5px"&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  1: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Microsoft.VisualStudio.TestTools.UnitTesting;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  2: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Microsoft.VisualStudio.TestTools.UnitTesting.Web;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  3: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  4: &lt;span style="color: #0000ff"&gt;namespace&lt;/span&gt; CalcTest
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  5: {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  6:     &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  7:     &lt;span style="color: #808080"&gt;///This is a test class for CalculatorServiceTest and is intended&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  8:     &lt;span style="color: #808080"&gt;///to contain all CalculatorServiceTest Unit Tests&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;  9:     &lt;span style="color: #808080"&gt;///&amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 10:     [TestClass()]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 11:     &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; CalculatorServiceTest
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 12:     {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 13:         &lt;span style="color: #0000ff"&gt;private&lt;/span&gt; TestContext testContextInstance;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 14: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 15:         &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 16:         &lt;span style="color: #808080"&gt;///Gets or sets the test context which provides&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 17:         &lt;span style="color: #808080"&gt;///information about and functionality for the current test run.&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 18:         &lt;span style="color: #808080"&gt;///&amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 19:         &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; TestContext TestContext
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 20:         {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 21:             &lt;span style="color: #0000ff"&gt;get&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 22:             {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 23:                 &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; testContextInstance;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 24:             }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 25:             &lt;span style="color: #0000ff"&gt;set&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 26:             {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 27:                 testContextInstance = &lt;span style="color: #0000ff"&gt;value&lt;/span&gt;;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 28:             }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 29:         }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 30:         
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 31:         &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 32:         &lt;span style="color: #808080"&gt;///A test for Add&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 33:         &lt;span style="color: #808080"&gt;///&amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 34:         [TestMethod()]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 35:         [HostType(&amp;quot;&lt;span style="color: #8b0000"&gt;ASP.NET&lt;/span&gt;&amp;quot;)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 36:         [UrlToTest(&amp;quot;&lt;span style="color: #8b0000"&gt;http://localhost/Calc&lt;/span&gt;&amp;quot;)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 37:         &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; AddTest()
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 38:         {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 39:             CalculatorService_Accessor target = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; CalculatorService_Accessor(); 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 40:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum1 = 1;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 41:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum2 = 1;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 42:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; expected = 2;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 43:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; actual;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 44:             actual = target.Add(lNum1, lNum2);
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 45:             Assert.AreEqual(expected, actual);
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 46:         }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 47: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 48:         &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 49:         &lt;span style="color: #808080"&gt;///A test for Subtract&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 50:         &lt;span style="color: #808080"&gt;///&amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 51:         [TestMethod()]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 52:         [HostType(&amp;quot;&lt;span style="color: #8b0000"&gt;ASP.NET&lt;/span&gt;&amp;quot;)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 53:         [UrlToTest(&amp;quot;&lt;span style="color: #8b0000"&gt;http://localhost/Calc/Default.aspx&lt;/span&gt;&amp;quot;)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 54:         &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; SubtractTest()
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 55:         {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 56:             CalculatorService_Accessor target = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; CalculatorService_Accessor();
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 57:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum1 = 5;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 58:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum2 = 2;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 59:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; expected = 3;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 60:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; actual;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 61:             actual = target.Subtract(lNum1, lNum2);
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 62:             Assert.AreEqual(expected, actual);
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 63:         }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 64: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 65:         &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 66:         &lt;span style="color: #808080"&gt;///A test for Multiply&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 67:         &lt;span style="color: #808080"&gt;///&amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 68:         [TestMethod()]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 69:         [HostType(&amp;quot;&lt;span style="color: #8b0000"&gt;ASP.NET&lt;/span&gt;&amp;quot;)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 70:         [UrlToTest(&amp;quot;&lt;span style="color: #8b0000"&gt;http://localhost/Calc/Default.aspx&lt;/span&gt;&amp;quot;)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 71:         &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; MultiplyTest()
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 72:         {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 73:             CalculatorService_Accessor target = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; CalculatorService_Accessor(); 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 74:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum1 = 2;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 75:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum2 = 5;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 76:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; expected = 10;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 77:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; actual;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 78:             actual = target.Multiply(lNum1, lNum2);
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 79:             Assert.AreEqual(expected, actual);
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 80:         }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 81: 
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 82:         &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 83:         &lt;span style="color: #808080"&gt;///A test for Divide&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 84:         &lt;span style="color: #808080"&gt;///&amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 85:         [TestMethod()]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 86:         [HostType(&amp;quot;&lt;span style="color: #8b0000"&gt;ASP.NET&lt;/span&gt;&amp;quot;)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 87:         [UrlToTest(&amp;quot;&lt;span style="color: #8b0000"&gt;http://localhost/Calc/Default.aspx&lt;/span&gt;&amp;quot;)]
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 88:         &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; DivideTest()
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 89:         {
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 90:             CalculatorService_Accessor target = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; CalculatorService_Accessor();
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 91:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum1 = 10;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 92:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; lNum2 = 2;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 93:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; expected = 5;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 94:             &lt;span style="color: #0000ff"&gt;long&lt;/span&gt; actual;
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 95:             actual = target.Divide(lNum1, lNum2);
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 96:             Assert.AreEqual(expected, actual);
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 97:         }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 98:     }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt; 99: }
&lt;/pre&gt;&lt;pre style="background-color: #fbfbfb; margin: 0em; width: 100%; font-family: consolas,&amp;#39;Courier New&amp;#39;,courier,monospace; font-size: 11px"&gt;100: &lt;/pre&gt;&lt;/pre&gt;

&lt;p&gt;When extracting the solution from the zip file, you can extract the attached zip file and from an elevated command prompt&lt;/p&gt;

&lt;table border="1"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;
        &lt;pre&gt;&lt;b&gt;&lt;span style="color: rgb(0,0,160)"&gt;C:\calc&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;i&gt;&lt;span style="color: rgb(164,0,0)"&gt;AddCalctoIIS.cmd&lt;/span&gt;&lt;/i&gt;
APP object &amp;quot;Default Web Site/Calc&amp;quot; added
VDIR object &amp;quot;Default Web Site/Calc&amp;quot; added
added new IIS VDir
APP object &amp;quot;Default Web Site/Calc&amp;quot; changed
set the app pool to run under ASP.NET v4.0
processed file: C:\calc\Calc
Successfully processed 1 files; Failed processing 0 files
setup the right permissions&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p mce_keep="true"&gt;Add the solution to the Labwalkthru project in source control and build it. For running these tests in a remote lab environment, these tests to be part of the TCM in TFS. Import the test cases to TCM by using the tcm command. &lt;/p&gt;

&lt;table border="1" width="768"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td width="766"&gt;
        &lt;p style="font-family: consolas"&gt;&lt;b&gt;C:\calc\calctest\bin\Debug&amp;gt;&lt;/b&gt; 

          &lt;br /&gt;&lt;em&gt;tcm testcase /import /collection:http://&lt;strong&gt;&lt;font color="#ff0000"&gt;varadab2tfs&lt;/font&gt;&lt;/strong&gt;:8080/tfs/DefaultCollection /teamproject:Labwalkthru &lt;/em&gt;

          &lt;br /&gt;&lt;i&gt;/storage:CalcTest.dll&lt;/i&gt; 

          &lt;br /&gt;Modification&amp;#160;&amp;#160; Title 

          &lt;br /&gt;-------------- ----------------------------------------------------------- 

          &lt;br /&gt;Added&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; AddTest 

          &lt;br /&gt;Added&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; SubtractTest 

          &lt;br /&gt;Added&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; MultiplyTest 

          &lt;br /&gt;Added&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; DivideTest 

          &lt;br /&gt;Summary 

          &lt;br /&gt;-------------- 

          &lt;br /&gt;Added&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 4 

          &lt;br /&gt;Updated&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 0 

          &lt;br /&gt;Removed&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 0 

          &lt;br /&gt;Total&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; 4 

          &lt;br /&gt;&lt;/p&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;h4&gt;Create the rest of the Test assets:&lt;/h4&gt;

&lt;p&gt;We should provide the BVT experience a test suite to run, so launch the “Microsoft Test and Lab Manager” and connect to the project. &lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfilesDA26964/image18.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfilesDA26964\image18.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image002_f10dddf3-54be-4547-a2ec-8e81bad84654.png" width="541" height="547" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image002_f10dddf3-54be-4547-a2ec-8e81bad84654.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Create a test plan by clicking on Add &lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfilesDA26964/image14.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfilesDA26964\image14.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image004_e0317de4-a1de-406c-a5e9-9d3e8daea759.png" width="606" height="484" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image004_e0317de4-a1de-406c-a5e9-9d3e8daea759.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let us call it “BVT tests” and select the “Select plan”&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfilesDA26964/image10.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfilesDA26964\image10.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image006" border="0" alt="clip_image006" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image006_c3183205-5025-46d9-b6b8-9e32ffe0f2e6.png" width="602" height="484" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image006_c3183205-5025-46d9-b6b8-9e32ffe0f2e6.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the tests add the tests that we just imported&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfilesDA26964/image6.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfilesDA26964\image6.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image008" border="0" alt="clip_image008" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image008_065909c2-02db-4801-9fb6-b89e8587905d.png" width="644" height="235" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image008_065909c2-02db-4801-9fb6-b89e8587905d.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;Create a Lab Environment for running the tests:&lt;/h4&gt;

&lt;p&gt;In MTLM, move from test center to Lab center.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/image_4.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/image_thumb_1.png" width="644" height="205" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Create a new virtual environment&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image48.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfiles346FD52\image48.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image012" border="0" alt="clip_image012" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image012_5a067629-18de-4306-a94d-6043fbde5bec.png" width="644" height="460" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image012_5a067629-18de-4306-a94d-6043fbde5bec.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and in the machine tab, select import &lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image56.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfiles346FD52\image56.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image014" border="0" alt="clip_image014" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image014_255fe2cf-99f9-4c83-ba78-13c0da0d9a50.png" width="644" height="460" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image014_255fe2cf-99f9-4c83-ba78-13c0da0d9a50.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and import the prepared VM stored earlier&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image80.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfiles346FD52\image80.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image016" border="0" alt="clip_image016" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image016_89c03cfc-b556-406d-aee4-67f403f6b64b.png" width="644" height="460" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image016_89c03cfc-b556-406d-aee4-67f403f6b64b.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Finish the import and click Add to Environment, edit the role to be Web Server&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image84.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfiles346FD52\image84.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image018" border="0" alt="clip_image018" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image018_0600543e-0528-4900-9350-d4ffa75a7bac.png" width="644" height="460" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image018_0600543e-0528-4900-9350-d4ffa75a7bac.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Add “Run test” and “Run workflow” capabilities&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image88.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfiles346FD52\image88.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image020" border="0" alt="clip_image020" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image020_2720265f-f22c-4047-959b-81a23bccfafe.png" width="644" height="460" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image020_2720265f-f22c-4047-959b-81a23bccfafe.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and click the “Finish” button. This will create a test environment which can be used as part of the “build / deploy &amp;amp; test workflow”. At this point, lab will deploy the store environment in the library share to a hostgroup. This will take a bit of time to complete.&lt;/p&gt;

&lt;p&gt;After the environment is up and running, you should see that the workflow capability and test capability are all ready in the environment.&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image16.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfiles346FD52\image16.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image022" border="0" alt="clip_image022" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image022_a5bad57a-9896-43f4-b13d-423eb5cf7383.png" width="644" height="329" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image022_a5bad57a-9896-43f4-b13d-423eb5cf7383.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In our case, on the environment, we are running web tests as NetworkService (the test agent is configured by default to run as networkservice). To run tests in ASP.NET, the user has to be administrator on the machine. So connect to the lab machine,&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfilesDA26964/image2.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfilesDA26964\image2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image024" border="0" alt="clip_image024" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image024_96e8a87c-2ceb-4ddf-bc03-3015e907e5ab.png" width="196" height="273" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image024_96e8a87c-2ceb-4ddf-bc03-3015e907e5ab.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;logon to the VM and add Networkservice as member of the administrators group and then reboot the machine. 
  &lt;table border="1" cellpadding="0"&gt;&lt;tbody&gt;
      &lt;tr&gt;
        &lt;td&gt;
          &lt;pre&gt;&lt;b&gt;C:\&amp;gt;&lt;/b&gt;&lt;i&gt;net localgroup administrators /add &amp;quot;NT AUTHORITY\Network Service&amp;quot;&lt;/i&gt;&lt;/pre&gt;
        &lt;/td&gt;
      &lt;/tr&gt;
    &lt;/tbody&gt;&lt;/table&gt;
&lt;/p&gt;

&lt;p&gt;Reboot the machine to allow for this to take effect. &lt;/p&gt;

&lt;p&gt;When the tests run, you would want to restore the environment to a clean snapshot. Take the snapshot, by clicking on the “Take Snapshot” icon.&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image57.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfiles346FD52\image57.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image026" border="0" alt="clip_image026" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image026_090ee2cb-1e70-463e-a87e-54d1d7559000.png" width="278" height="264" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image026_090ee2cb-1e70-463e-a87e-54d1d7559000.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let us call the Snapshot, “CleanCP”&lt;/p&gt;

&lt;h4&gt;Create test settings for the automated run:&lt;/h4&gt;

&lt;p&gt;Create a new test setting and set the test run to automated.&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image27.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfiles346FD52\image27.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image028" border="0" alt="clip_image028" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image028_bd10fd65-6d6e-4e4f-b757-d815519a0ba4.png" width="644" height="270" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image028_bd10fd65-6d6e-4e4f-b757-d815519a0ba4.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p align="justify"&gt;In the Roles tab, select the web server role (VM1) to be the role where tests are run. This is needed in case where your environment has multiple roles, you can pick the right role where the tests get run.&lt;/p&gt;

&lt;p&gt;&lt;a href="file:///C:/Users/varat/AppData/Local/Temp/1/WindowsLiveWriter1286139640/supfiles346FD52/image29.png" mce_href="file:///C:\Users\varat\AppData\Local\Temp\1\WindowsLiveWriter1286139640\supfiles346FD52\image29.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="clip_image030" border="0" alt="clip_image030" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image030_cc01843e-2981-41ab-94ec-2e0faf5190d2.png" width="644" height="301" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart3_808C/clip_image030_cc01843e-2981-41ab-94ec-2e0faf5190d2.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And finish.&lt;/p&gt;

&lt;p&gt;In the next blog post, we will connect all the dots to execute the test runs as part of the dev workflow.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9925941" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author></entry><entry><title>Getting started with Lab Management (Part 2)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/11/18/getting-started-with-lab-management-part-2.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/11/18/getting-started-with-lab-management-part-2.aspx</id><published>2009-11-18T08:38:00Z</published><updated>2009-11-18T08:38:00Z</updated><content type="html">&lt;h3&gt;Configure the TFS VM:&lt;/h3&gt;  &lt;p align="justify"&gt;In our setup, we will configure TFS server, the build controller, build agent to do the build process, test controller which will manage test execution and also as the dev box where we will write the code. This can be a VM in the same host if you can spare 2GB of RAM on the host.&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;     &lt;div&gt;SCVMM admin console &lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div&gt;TFS &lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div&gt;Build Controller &lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div&gt;Test Controller &lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div&gt;VS &lt;/div&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;h4&gt;Install SCVMM Admin Console:&lt;/h4&gt;  &lt;p align="justify"&gt;Start the SCVMM install on the TFS server, and select the administrator console option. Select the default set of steps, and let it complete. The lab management service that will run on TFS needs the SDK installed by the admin console to communicate to the TFS server. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image53.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image53.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb33" border="0" alt="image_thumb33" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb33_91fb3a20-dde5-4ca4-8f0e-f1809ef60e72.png" width="244" height="189" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb33_91fb3a20-dde5-4ca4-8f0e-f1809ef60e72.png" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;Install Team Foundation Server:&lt;/h4&gt;  &lt;p align="justify" mce_keep="true"&gt;In my configuration, I am setting up TFS, the build controller, test controller and Visual Studio all in the same box (a 64bit Win28R2 VM with 2GB RAM). &lt;/p&gt;  &lt;p align="justify" mce_keep="true"&gt;If you are using a physical box, you need to burn DVDs from the ISO files of the 3 ISOs you downloaded (VS2010B2Agent1.iso, VS2010B2TFS1.iso, VS2010B2Ult.iso).&lt;/p&gt;  &lt;p align="justify" mce_keep="true"&gt;If you are using a VM as the TFS server, you can on the SCVMM host, configure the VM where the TFS &amp;amp; the rest are to be installed to have 3 DVD drives where the isos are mounted, to help ease the installation. (The VM should be shutdown before you can add DVD drives)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_2.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_2.png" width="278" height="509" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_2.png" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;After launching TFS install from the DVD, select both TFS server and the build controller to install&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image2.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb" border="0" alt="image_thumb" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_bdce901b-0b80-4c50-9d19-c39f77e6fdae.png" width="244" height="182" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_bdce901b-0b80-4c50-9d19-c39f77e6fdae.png" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;On the configuration screen, select Basic&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_4.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_4.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_3.png" width="644" height="316" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_3.png" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Let TFS install complete with the default selections. &lt;/p&gt;  &lt;p&gt;Once the TFS configuration is complete, next step is to configure the build service. Launch the “Build Service Configuration Wizard” and associate it with the DefaultCollection created by the TFS install.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image47.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image47.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb29" border="0" alt="image_thumb29" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb29_549ad183-0fcd-4fbd-bfb2-de506f3dc9a0.png" width="644" height="294" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb29_549ad183-0fcd-4fbd-bfb2-de506f3dc9a0.png" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p mce_keep="true"&gt;Use the default settings for the rest and go ahead with the configuration.&lt;/p&gt;  &lt;h4&gt;Install and configure Test Controller:&lt;/h4&gt;  &lt;p align="justify"&gt;Launch the Team agents setup (the agents iso file – in your another DVD drive), and select “Install Visual Studio Team Test Controller 2010”. &lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_6.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_6.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_4.png" width="521" height="420" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_4.png" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="justify"&gt;Select defaults and let the install complete. Register the test controller against the project collection that was created.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image64.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image64.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb38" border="0" alt="image_thumb38" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb38_eab5e122-a6be-4868-b183-c5e41c97ef70.png" width="457" height="484" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb38_eab5e122-a6be-4868-b183-c5e41c97ef70.png" /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;h4&gt;&lt;/h4&gt;  &lt;p mce_keep="true"&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;Setup permissions for the lab clients to talk to TFS and test controller:&lt;/h4&gt;  &lt;p align="justify"&gt;(Note: the below option is not a scalable approach. I am just using it to make it simple for the purpose of the walk through. The RC bits will have a better approach for handling security).&lt;/p&gt;  &lt;h5&gt;&lt;/h5&gt;  &lt;h5&gt;Test permissions&lt;/h5&gt;  &lt;p align="justify"&gt;On the test controller machine, &lt;/p&gt;  &lt;table border="1"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td&gt;         &lt;pre&gt;&lt;b&gt;&lt;span style="color: rgb(0,0,160)"&gt;C:\&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;i&gt;&lt;span style="color: rgb(164,0,0)"&gt;net localgroup TeamTestAgentService /add fareast\varadab2vm1$&lt;/span&gt;&lt;/i&gt;&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;h5&gt;Build permissions:&lt;/h5&gt;

&lt;p align="justify"&gt;Launch the TFS admin console, go to the default collection, in the “General” tab select “Administer Group Membership” and group “Project Collection Build Service Accounts”&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_8.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_8.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_5.png" width="543" height="244" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb_5.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p align="justify"&gt;And add the test VM to the group (note that you have to select “Computers” in the search scope for object type to find the VM name – by default, only Users and Groups are searched).&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image41.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image41.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb21" border="0" alt="image_thumb21" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb21_3169dc73-93a0-4f5a-9790-8a2f436260c5.png" width="644" height="471" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb21_3169dc73-93a0-4f5a-9790-8a2f436260c5.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;h4&gt;Configure Lab:&lt;/h4&gt;

&lt;p&gt;Launch the TFS Administration Console and start configuring Lab Management.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image811%5B1%5D.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image811%5B1%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb6" border="0" alt="image_thumb6" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb6_740863c3-f46a-40a0-b555-c7249270d5a8.png" width="644" height="263" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb6_740863c3-f46a-40a0-b555-c7249270d5a8.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p mce_keep="true"&gt;&amp;#160;&lt;/p&gt;

&lt;h4&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image151.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image151.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb9" border="0" alt="image_thumb9" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb9_ce1b745f-a1eb-44dd-9301-b4dad8777a6f.png" width="597" height="484" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb9_ce1b745f-a1eb-44dd-9301-b4dad8777a6f.png" /&gt;&lt;/a&gt; &lt;/h4&gt;

&lt;p&gt;Click on Test&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image19.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image19.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb11" border="0" alt="image_thumb11" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb11_1a34f2bd-ff97-4bd8-ad13-b2488253389a.png" width="404" height="215" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb11_1a34f2bd-ff97-4bd8-ad13-b2488253389a.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p align="justify"&gt;Provide the admin credential for the SCVMM host. This will ensure that TFS can ask SCVMM to do operations like “Create VM” and such. The Network location combo box will now be populated. &lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image23.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image23.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb13" border="0" alt="image_thumb13" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb13_edebab9c-5e12-4a91-9285-b7e6918f57e3.png" width="600" height="451" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb13_edebab9c-5e12-4a91-9285-b7e6918f57e3.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Select OK to finish configuration of lab in the Application Tier.&lt;/p&gt;

&lt;h4&gt;Configure Lab for Project Collection:&lt;/h4&gt;

&lt;p&gt;Continuing in the TFS admin console, select the lab management tab in the default collection. &lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image271.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image271.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb151" border="0" alt="image_thumb151" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb151_e25fc882-c945-4554-bb26-65c3985e8694.png" width="644" height="288" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb151_e25fc882-c945-4554-bb26-65c3985e8694.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p align="justify"&gt;Select Configure Library shares – this allows individual project collections to have their specific library shares and host groups. For our purposes, we just work with all the resources we have.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image31.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image31.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb17" border="0" alt="image_thumb17" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb17_996d2e11-03e2-434c-99a2-0f4c0dc63e83.png" width="601" height="268" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb17_996d2e11-03e2-434c-99a2-0f4c0dc63e83.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image36.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image36.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb20" border="0" alt="image_thumb20" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb20_8bf40d10-8cad-4706-a6d3-73eb87b81c7e.png" width="603" height="236" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb20_8bf40d10-8cad-4706-a6d3-73eb87b81c7e.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;and “Verify”&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image401.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image401.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image_thumb22" border="0" alt="image_thumb22" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb22_53f8049e-b5c0-4b9f-9ac1-5400f125928a.png" width="395" height="214" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/44486707644b_631B/image_thumb22_53f8049e-b5c0-4b9f-9ac1-5400f125928a.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Provide an administrator credential that works on all the hosts (1 in my case, but can be 2), and press OK. This configures lab for the project collection.&lt;/p&gt;

&lt;h4&gt;Install VS2010&lt;/h4&gt;

&lt;p&gt;Install VS2010 ultimate (another DVD drive) with the default configuration.&lt;/p&gt;

&lt;p&gt;In the next blog post, we will create the system under test and start actually seeing lab in action.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9924170" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author></entry><entry><title>Getting started with Lab Management (Part 1)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/11/18/Getting-started-with-Lab-Management-_2800_Part-1_2900_.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/11/18/Getting-started-with-Lab-Management-_2800_Part-1_2900_.aspx</id><published>2009-11-18T08:35:00Z</published><updated>2009-11-18T08:35:00Z</updated><content type="html">&lt;p align="justify"&gt;Lab management is a new addition to the Visual Studio family with VS2010. The product uses virtualization to build and manage labs in the dev / test environment. The promise of the product is three fold.&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;     &lt;div align="justify"&gt;Using virtualization, machine utilization and hardware costs of managing labs will be much better than building out and maintaining physical labs. &lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;Increased productivity of the dev/test team – various surveys indicate that test members spend 30 – 50% of their time in setting up their test bed and getting it ready for testing. The product leverages the virtualization to vastly reduce the cost of this bootstrap. Leveraging the rich snapshot / restore models, it allows you to set up a pristine base environment (group of VMs) and then start your testing from there. When you consider the permutations of configurations typical test teams need to test, this will be a huge productivity enhancer.&amp;#160; &lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;Consistent feedback on the quality of the builds – the lab management solution allows you to configure your daily build system to build the product, deploy the application on an environment and execute tests on them. Effectively, this completely automates the daily BVT (Build Verification Tests) setup and provides a strong feedback on the state of quality of the daily builds. &lt;/div&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p align="justify"&gt;Lab management also nicely plays along with the other VS2010 value propositions like rich data collection for bugs (snapshot the environment). For a developer, it is easy to debug a bug reported on a particular build (restore to the snapshot of the environment for that build) or to do smoke testing of his changes across various test configurations. For a tester, the environment is also a good starting point for exploratory testing, easily venturing into various corners of the product with the knowledge that a tester could always reach back a well known state.&lt;/p&gt;  &lt;p align="justify"&gt;Enough intro. This blog post series will walk you through the automation of the end-to-end workflow using a simple calculator web service and unit tests for the same. At the end of the post, we would see the automated workflow where triggering a build will build an app, deploy it to a VM, run tests on it and report results. &lt;/p&gt;  &lt;p align="justify"&gt;While this example does not use multiple VMs in an environment, the same experience is applicable for multi-tier app testing as well. We can extend the application under test to cover various topologies (from traditional backend / frontend to software NLB to VMs spanning multiple trust boundaries)&lt;/p&gt;  &lt;p align="justify"&gt;&lt;strong&gt;&lt;u&gt;Prereqs:&lt;/u&gt; &lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;     &lt;div align="justify"&gt;One x64 hypervisor enabled machine with 4GB RAM that can act as hosts for the test VMs, as well as the SCVMM server. Note that SCVMM requires to be installed on a machine joined to domain and needs live connection to the domain for authentication. So this cannot be your roaming laptop. &lt;/div&gt;      &lt;ol&gt;       &lt;li&gt;         &lt;div align="justify"&gt;Note that the server should be running x64 OS&lt;/div&gt;       &lt;/li&gt;        &lt;li&gt;         &lt;div align="justify"&gt;Hardware-assisted virtualization and hardware-assisted data execution protection are enabled in the BIOS (if you changed them now, turn off the power of the machine and restart them). &lt;a href="http://blogs.technet.com/jhoward/archive/2008/01/08/how-to-turn-on-hardware-assisted-virtualization.aspx"&gt;This post&lt;/a&gt; explains how to verify these settings in bios.&lt;/div&gt;       &lt;/li&gt;        &lt;li&gt;         &lt;div align="justify"&gt;Hypervisor server role is installed&lt;/div&gt;       &lt;/li&gt;     &lt;/ol&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;One x86 machine (2GB RAM) that can run TFS, VS and the build and test controllers for managing distributed build and test.&lt;/div&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Representing the host configurations pictorially, you can configure your systems to be in either of the configurations below. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_117C4/image_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_117C4/image_thumb.png" width="644" height="372" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/Picture2_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Picture2" border="0" alt="Picture2" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/Picture2_thumb.png" width="644" height="396" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Software downloads:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;     &lt;div&gt;Visual Studio 2010 Team Foundation Server: &lt;a href="http://go.microsoft.com/fwlink/?LinkID=165580" target="_blank" mce_href="http://go.microsoft.com/fwlink/?LinkID=165580"&gt;here&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div&gt;Visual Studio 2010 Team Agents Beta 2: &lt;a href="http://go.microsoft.com/fwlink/?LinkID=165574" target="_blank" mce_href="http://go.microsoft.com/fwlink/?LinkID=165574"&gt;here&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div&gt;Visual Studio 2010 Ultimate: &lt;a href="http://go.microsoft.com/fwlink/?LinkID=165572" target="_blank" mce_href="http://go.microsoft.com/fwlink/?LinkID=165572"&gt;here&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div&gt;System Center Virtual Machine Manager 2008 R2 RTM: &lt;a href="http://technet.microsoft.com/en-us/evalcenter/cc793138.aspx" target="_blank" mce_href="http://technet.microsoft.com/en-us/evalcenter/cc793138.aspx"&gt;here&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div&gt;VM creator tool from Codeplex: &lt;a href="http://vslabmgmt.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=36086" target="_blank" mce_href="http://vslabmgmt.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=36086"&gt;here&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div&gt;Windows Server 2008 R2 vhd: &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9040a4be-c3cf-44a5-9052-a70314452305&amp;amp;displaylang=en" target="_blank" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyId=9040a4be-c3cf-44a5-9052-a70314452305&amp;amp;displaylang=en"&gt;here&lt;/a&gt; (only needed if you do not have a server VM for OS VMs)&lt;/div&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;As part of the walk through we will&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Configure SCVMM which is the management hub for virtual machines and the test VM (this post)&amp;#160; &lt;/li&gt;    &lt;li&gt;Install and configure TFS, the controllers to manage build / test and lab (Part 2) &lt;/li&gt;    &lt;li&gt;Build the application under test in VS (Part 3) &lt;/li&gt;    &lt;li&gt;Use the virtual lab we built out to automate the build / deploy and test experience (Part 4) &lt;/li&gt; &lt;/ol&gt;  &lt;h4&gt;Install and configure SCVMM Server:&lt;/h4&gt;  &lt;p align="justify"&gt;On the hypervisor machine (in my case varadademo.fareast.corp.microsoft.com), install both the &lt;a href="http://technet.microsoft.com/en-us/evalcenter/cc793138.aspx"&gt;SCVMM server and the Administrator console&lt;/a&gt;. The lab product uses SCVMM as the hub for driving all the VM related operations. &lt;/p&gt;  &lt;p align="justify"&gt;I have done the default installation. As part of the install, I had VMM install SQL Server Express.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_46.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_46.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_22.png" width="618" height="484" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_22.png" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;VMM installs a SQL server that requires to be updated with some security patches. Use Windows Update to pick up the latest patches for VMM and SQL Server and reboot the machine after the updates are installed.&lt;/p&gt;  &lt;p&gt;Launch the admin console, pair to localhost:8100&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_48.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_48.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_23.png" width="365" height="245" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_23.png" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Select Add host and add the host machine (the same machine where I am running SCVMM)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_50.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_50.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_24.png" width="596" height="484" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_24.png" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;Add test VM to the host:&lt;/h4&gt;  &lt;p align="justify"&gt;Copy the Win2k8 R2 vhd you downloaded before to the library share and create a VM.Join the VMs to domain, giving it right computer names, and any other typical setup you might want on the VM. (Windows update to pick up the latest patches).&lt;/p&gt;  &lt;p align="justify"&gt;In a single host setup (with 8GB configuration), you can host the test VM and the TFS VM on the same host. In this case, make two copies of the VHD and deploy them to the same host. A future &lt;a href="http://blogs.msdn.com/lab_management/archive/2009/11/21/building-vms-out-of-the-downloadable-win2k8r2-vhds.aspx"&gt;post&lt;/a&gt; explains how to build out the test VM (and TFS VM as well if you are configuring in a 8GB setup)&lt;/p&gt;  &lt;h4&gt;Configure the Test VM:&lt;/h4&gt;  &lt;p align="justify"&gt;In our example, we will use the test VM as a web server to host our app and test it via unit tests. So let us make sure that ASP.NET is configured. To keep the walk through simple, we will just install all the web server components. Logon to the test VM, and from a elevated command prompt,&lt;/p&gt;  &lt;table border="1"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td&gt;         &lt;pre&gt;&lt;b&gt;&lt;span style="color: rgb(0,0,160)"&gt;C:\Users\Administrator&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;i&gt;&lt;span style="color: rgb(164,0,0)"&gt;servermanagercmd -install Web-Server -a&lt;/span&gt;&lt;/i&gt;

Servermanagercmd.exe is deprecated, and is not guaranteed to be supported
in future releases of Windows. We recommend that you use the Windows 
PowerShell cmdlets that are available for Server Manager.

Start Installation...
[Installation] Succeeded: [Web Server (IIS)] IIS Hostable Web Core.
[Installation] Succeeded: [Web Server (IIS)] IIS Management Scripts and Tools.
[Installation] Succeeded: [Web Server (IIS)] IIS Management Console.
[Installation] Succeeded: [Web Server (IIS)] Management Service.
[Installation] Succeeded: [Web Server (IIS)] FTP Service.
[Installation] Succeeded: [Web Server (IIS)] Custom Logging.
[Installation] Succeeded: [Web Server (IIS)] IIS 6 Metabase Compatibility.
[Installation] Succeeded: [Web Server (IIS)] Static Content.
[Installation] Succeeded: [Web Server (IIS)] Logging Tools.
[Installation] Succeeded: [Web Server (IIS)] Tracing.
[Installation] Succeeded: [Web Server (IIS)] Request Monitor.
[Installation] Succeeded: [Web Server (IIS)] IP and Domain Restrictions.
[Installation] Succeeded: [Web Server (IIS)] Request Filtering.
[Installation] Succeeded: [Web Server (IIS)] URL Authorization.
[Installation] Succeeded: [Web Server (IIS)] IIS 6 WMI Compatibility.
[Installation] Succeeded: [Web Server (IIS)] Dynamic Content Compression.
[Installation] Succeeded: [Web Server (IIS)] Static Content Compression.
[Installation] Succeeded: [Web Server (IIS)] Windows Authentication.
[Installation] Succeeded: [Web Server (IIS)] Basic Authentication.
[Installation] Succeeded: [Web Server (IIS)] ODBC Logging.
[Installation] Succeeded: [Web Server (IIS)] IIS Client Certificate Mapping Authentication.
[Installation] Succeeded: [Web Server (IIS)] Client Certificate Mapping Authentication.
[Installation] Succeeded: [Web Server (IIS)] Digest Authentication.
[Installation] Succeeded: [Web Server (IIS)] Default Document.
[Installation] Succeeded: [Web Server (IIS)] Directory Browsing.
[Installation] Succeeded: [Web Server (IIS)] ISAPI Filters.
[Installation] Succeeded: [Web Server (IIS)] HTTP Errors.
[Installation] Succeeded: [Web Server (IIS)] HTTP Redirection.
[Installation] Succeeded: [Web Server (IIS)] HTTP Logging.
[Installation] Succeeded: [Web Server (IIS)] ISAPI Extensions.
[Installation] Succeeded: [Web Server (IIS)] Server Side Includes.
[Installation] Succeeded: [Web Server (IIS)] CGI.
[Installation] Succeeded: [Web Server (IIS)] FTP Extensibility.
[Installation] Succeeded: [Web Server (IIS)] IIS 6 Management Console.
[Installation] Succeeded: [Web Server (IIS)] .NET Extensibility.
[Installation] Succeeded: [Web Server (IIS)] WebDAV Publishing.
[Installation] Succeeded: [Web Server (IIS)] IIS 6 Scripting Tools.
[Installation] Succeeded: [Web Server (IIS)] ASP.
[Installation] Succeeded: [Web Server (IIS)] ASP.NET.
&amp;lt;100/100&amp;gt;

Success: Installation succeeded.&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p&gt;Allow the VM to be managed remotely by enabling firewall exception for WMI&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_18.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_6.png" width="644" height="357" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;The next step will bootstrap the agents (test, build and lab) on the VM to allow the VM to participate in the end to end deployment workflow. As part of the configuration, build agent, test agent and lab agent will be installed and configured on the VM.&lt;/p&gt;

&lt;p align="justify"&gt;On the SCVMM machine, copy the isos of agent, TFS and lab (lab comes from the VMtool that you downloaded from &lt;a href="http://vslabmgmt.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=36086" target="_blank" mce_href="http://vslabmgmt.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=36086"&gt;here&lt;/a&gt;) to the SCVMM library share&lt;/p&gt;

&lt;table border="1"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;
        &lt;pre&gt;move VS2010B2TFS1.iso &amp;quot;C:\ProgramData\Virtual Machine Manager Library Files&amp;quot;
move VS2010B2Agent1.iso &amp;quot;C:\ProgramData\Virtual Machine Manager Library Files&amp;quot;
move labmgmt.iso &amp;quot;C:\ProgramData\Virtual Machine Manager Library Files&amp;quot;&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p align="justify"&gt;Go back to SCVMM Admin console and refresh the library shares and make sure that the new ISOs are visible there.&lt;/p&gt;

&lt;p align="justify"&gt;Now go to the directory where you have extracted the VMTool. Change the Inputfile.xml there to provide the VMMServer, LibraryShare, the admin user name and password for the running test VM and the rest of the information. (If you are using the Win2K8R2 vhds, the admin name is: Administrator, Password is: &lt;a href="mailto:Pass@word1"&gt;Pass@word1&lt;/a&gt;)&lt;/p&gt;

&lt;table border="1"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;
        &lt;pre&gt;C:\Users\lmtstlab\Desktop\VMTool&amp;gt; type .\Inputfile.xml 
&amp;lt;Parameters&amp;gt; 
    &amp;lt;VMMServer&amp;gt;varadademo.fareast.corp.microsoft.com&amp;lt;/VMMServer&amp;gt; 
    &amp;lt;LibraryShareName&amp;gt;MSSCVMMLibrary&amp;lt;/LibraryShareName&amp;gt; 
    &amp;lt;VMName&amp;gt;VaradaB2VM1&amp;lt;/VMName&amp;gt; 
    &amp;lt;VMAdminUserName&amp;gt;&lt;strong&gt;Provide Admin user name for the VM&lt;/strong&gt;&amp;lt;/VMAdminUserName&amp;gt; 
    &amp;lt;VMAdminPassword&amp;gt;&lt;strong&gt;Provide password for the admin user on the VM&lt;/strong&gt;&amp;lt;/VMAdminPassword&amp;gt; 
    &amp;lt;TFSISOName&amp;gt;VS2010B2TFS1.iso&amp;lt;/TFSISOName&amp;gt; 
    &amp;lt;DTEISOName&amp;gt;VS2010B2Agent1.iso&amp;lt;/DTEISOName&amp;gt; 
    &amp;lt;GoldenTemplateName&amp;gt;&amp;lt;/GoldenTemplateName&amp;gt; 
    &amp;lt;Owner&amp;gt;&amp;lt;/Owner&amp;gt; 
    &amp;lt;LABMGMTISOName&amp;gt;&amp;lt;/LABMGMTISOName&amp;gt; 
&amp;lt;/Parameters&amp;gt;&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p&gt;Verify the VM is running and has network connection. Back at the SCVMM host, launch the VMM Powershell as administrator&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_9.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_3.png" width="395" height="247" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;

&lt;table border="1"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;
        &lt;pre&gt;Windows PowerShell
Copyright (C) 2009 Microsoft Corporation. All rights reserved.

PS C:\Windows\system32&amp;gt; set-executionpolicy Unrestricted

Execution Policy Change
The execution policy helps protect you from scripts that you do not trust.
Changing the execution policy might expose you to the security risks described
in the about_Execution_Policies help topic. Do you want to change the execution
 policy?
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is &amp;quot;Y&amp;quot;): y
PS C:\Windows\system32&amp;gt; cd C:\Users\lmtstlab\Desktop\VMTool
PS C:\Users\lmtstlab\Desktop\VMTool&amp;gt; .\New-TemplateFromVM.ps1 .\InputFile.xml 
-SkipClone -SkipTemplateCreation
                 Connecting to SCVMM Server and initializing state...&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p&gt;At this point the test VM (VaradaB2VM1) is ready to participate as a virtual environment in the lab workflow. Let us store this in the library to be used when creating environments. &lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_78.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_78.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_36.png" width="446" height="484" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_36.png" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Select the default server&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_80.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_80.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_37.png" width="644" height="410" mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/GettingstartedwithLabManagementPart1_83E5/image_thumb_37.png" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;and share to save and go.&lt;/p&gt;

&lt;p align="justify"&gt;We now have in the SCVMM library a virtual machine that can be used by the lab software to create test environments. Before you save the VM to library, you could also do any other prerequisite that your system under test might have. In this case, we wanted a web server, and thus we ended up doing nothing more than configuring the web server.&lt;/p&gt;

&lt;p align="justify"&gt;In the next blog in this series, we will work on configuring the VM that will act as the TFS server, the build and test controllers and VS machine.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9924169" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author></entry><entry><title>New blog design</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/11/03/new-blog-design.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/11/03/new-blog-design.aspx</id><published>2009-11-03T12:16:00Z</published><updated>2009-11-03T12:16:00Z</updated><content type="html">&lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="Word.Document"&gt;&lt;meta name="Generator" content="Microsoft Word 12"&gt;&lt;meta name="Originator" content="Microsoft Word 12"&gt;
&lt;link href="file:///C:%5CUsers%5Cshmandel%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml" rel="File-List" mce_href="file:///C:%5CUsers%5Cshmandel%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml"&gt;
&lt;link href="file:///C:%5CUsers%5Cshmandel%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx" rel="themeData" mce_href="file:///C:%5CUsers%5Cshmandel%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx"&gt;
&lt;link href="file:///C:%5CUsers%5Cshmandel%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml" rel="colorSchemeMapping" mce_href="file:///C:%5CUsers%5Cshmandel%5CAppData%5CLocal%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:WordDocument&gt;
  &lt;w:View&gt;Normal&lt;/w:View&gt;
  &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;
  &lt;w:TrackMoves/&gt;
  &lt;w:TrackFormatting/&gt;
  &lt;w:PunctuationKerning/&gt;
  &lt;w:ValidateAgainstSchemas/&gt;
  &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;
  &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;
  &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;
  &lt;w:DoNotPromoteQF/&gt;
  &lt;w:LidThemeOther&gt;EN-IN&lt;/w:LidThemeOther&gt;
  &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;
  &lt;w:LidThemeComplexScript&gt;HE&lt;/w:LidThemeComplexScript&gt;
  &lt;w:Compatibility&gt;
   &lt;w:BreakWrappedTables/&gt;
   &lt;w:SnapToGridInCell/&gt;
   &lt;w:WrapTextWithPunct/&gt;
   &lt;w:UseAsianBreakRules/&gt;
   &lt;w:DontGrowAutofit/&gt;
   &lt;w:SplitPgBreakAndParaMark/&gt;
   &lt;w:DontVertAlignCellWithSp/&gt;
   &lt;w:DontBreakConstrainedForcedTables/&gt;
   &lt;w:DontVertAlignInTxbx/&gt;
   &lt;w:Word11KerningPairs/&gt;
   &lt;w:CachedColBalance/&gt;
  &lt;/w:Compatibility&gt;
  &lt;w:BrowserLevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;
  &lt;m:mathPr&gt;
   &lt;m:mathFont m:val="Cambria Math"/&gt;
   &lt;m:brkBin m:val="before"/&gt;
   &lt;m:brkBinSub m:val="&amp;#45;-"/&gt;
   &lt;m:smallFrac m:val="off"/&gt;
   &lt;m:dispDef/&gt;
   &lt;m:lMargin m:val="0"/&gt;
   &lt;m:rMargin m:val="0"/&gt;
   &lt;m:defJc m:val="centerGroup"/&gt;
   &lt;m:wrapIndent m:val="1440"/&gt;
   &lt;m:intLim m:val="subSup"/&gt;
   &lt;m:naryLim m:val="undOvr"/&gt;
  &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"
  DefSemiHidden="true" DefQFormat="false" DefPriority="99"
  LatentStyleCount="267"&gt;
  &lt;w:LsdException Locked="false" Priority="0" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Normal"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="heading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 9"/&gt;
  &lt;w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/&gt;
  &lt;w:LsdException Locked="false" Priority="10" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Title"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/&gt;
  &lt;w:LsdException Locked="false" Priority="11" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/&gt;
  &lt;w:LsdException Locked="false" Priority="22" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Strong"/&gt;
  &lt;w:LsdException Locked="false" Priority="20" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="59" SemiHidden="false"
   UnhideWhenUsed="false" Name="Table Grid"/&gt;
  &lt;w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/&gt;
  &lt;w:LsdException Locked="false" Priority="34" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/&gt;
  &lt;w:LsdException Locked="false" Priority="29" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="30" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="19" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="21" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="31" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="32" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="33" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Book Title"/&gt;
  &lt;w:LsdException Locked="false" Priority="37" Name="Bibliography"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/&gt;
 &lt;/w:LatentStyles&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt;
&lt;!--
 /* Font Definitions */
 @font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;
	mso-font-alt:"Calisto MT";
	mso-font-charset:0;
	mso-generic-font-family:roman;
	mso-font-pitch:variable;
	mso-font-signature:-1610611985 1107304683 0 0 415 0;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;
	mso-font-alt:"Arial Rounded MT Bold";
	mso-font-charset:0;
	mso-generic-font-family:swiss;
	mso-font-pitch:variable;
	mso-font-signature:-520092929 1073786111 9 0 415 0;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{mso-style-unhide:no;
	mso-style-qformat:yes;
	mso-style-parent:"";
	margin:0cm;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";
	mso-fareast-font-family:Calibri;
	mso-fareast-theme-font:minor-latin;}
.MsoChpDefault
	{mso-style-type:export-only;
	mso-default-props:yes;
	font-size:10.0pt;
	mso-ansi-font-size:10.0pt;
	mso-bidi-font-size:10.0pt;}
@page Section1
	{size:612.0pt 792.0pt;
	margin:72.0pt 72.0pt 72.0pt 72.0pt;
	mso-header-margin:36.0pt;
	mso-footer-margin:36.0pt;
	mso-paper-source:0;}
div.Section1
	{page:Section1;}
--&gt;
&lt;/style&gt;&lt;!--[if gte mso 10]&gt;
&lt;style&gt;
 /* Style Definitions */
 table.MsoNormalTable
	{mso-style-name:"Table Normal";
	mso-tstyle-rowband-size:0;
	mso-tstyle-colband-size:0;
	mso-style-noshow:yes;
	mso-style-priority:99;
	mso-style-qformat:yes;
	mso-style-parent:"";
	mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
	mso-para-margin:0cm;
	mso-para-margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:10.0pt;
	font-family:"Times New Roman","serif";}
&lt;/style&gt;
&lt;![endif]--&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Arial','sans-serif';" lang="EN-US"&gt;As you may have noticed, the design of the blog has changed. Primary motivation of this redesign is to switch to a
neutral white background which is best suited for the screenshots as well as
reading longer text. Another is to give a touch of branding. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Arial','sans-serif';" lang="EN-US"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Arial','sans-serif';" lang="EN-US"&gt;The header uses signature colors of the Visual Studio
brand, which in turn simply employs these primary and complementary Microsoft
brand colors. &lt;span style="color: rgb(31, 73, 125);"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Arial','sans-serif';" lang="EN-US"&gt;The primary background for the Visual Studio identity
system consists of two elements: the primary color gradient and the white
particle wave. Each of these elements may be used independently, but the
combination of the two is the preferred background for Visual Studio brand
communications.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal" style="margin-bottom: 12pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Arial','sans-serif';" lang="EN-US"&gt;The white particle wave is a flexible, infinite grid of translucent
white dots that evokes the integrated nature and functionality of Visual
Studio. Its dynamic, flowing shape is maximized to create an inspirational
visual metaphor for the millions who make up the developer community.&lt;span style="color: rgb(31, 73, 125);"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Arial','sans-serif';" lang="EN-US"&gt;The timeline in header depicts the evolution of
technology in general - right from ancient abacus, punch cards and tapes of
yester years, to PC and explosion of web, all the way to the next big thing
'virtualization'. The layout is optimized to give more space and visual
prominence to blog posts and relatively less to navigation links.&lt;/span&gt; &lt;br&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Arial','sans-serif';" lang="EN-US"&gt;We hope you will enjoy the new design. &lt;/span&gt;&lt;br&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;

&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9916710" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author></entry><entry><title>Announcing Visual Studio Team Lab Management 2010 Beta2</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/10/20/announcing-visual-studio-team-lab-management-2010-beta2.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/10/20/announcing-visual-studio-team-lab-management-2010-beta2.aspx</id><published>2009-10-20T19:31:28Z</published><updated>2009-10-20T19:31:28Z</updated><content type="html">&lt;p&gt;Visual Studio 2010 / .NET 4.0 Framework Beta2 was &lt;a href="http://blogs.msdn.com/jasonz/archive/2009/10/19/announcing-vs2010-net-framework-beta-2.aspx"&gt;announced&lt;/a&gt; yesterday. MSDN subscribers can &lt;a href="http://go.microsoft.com/fwlink/?LinkID=151797"&gt;download&lt;/a&gt; it immediately with general availability on Oct 22nd. &lt;a href="http://blogs.msdn.com/lab_management/archive/2009/05/18/vsts-2010-lab-management-basic-concepts.aspx"&gt;Visual Studio Lab Management 2010&lt;/a&gt; is available as part of this beta release. There are numerous improvements in Lab Management Beta2 release as compared to Beta1 release, with some of the significant ones listed below:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Improved setup and configuration experience&lt;/li&gt;    &lt;li&gt;Simplified Environment creation and edit experience&lt;/li&gt;    &lt;li&gt;Full-screen environment viewer&lt;/li&gt;    &lt;li&gt;Out of the box template for application build-deploy-test workflow&lt;/li&gt;    &lt;li&gt;Network isolation with support for domain controller Virtual Machines&lt;/li&gt;    &lt;li&gt;“In-Use” support for shared environments&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;To setup and configure Lab Management, follow &lt;a href="http://msdn.microsoft.com/en-us/library/dd380687(VS.100).aspx"&gt;this&lt;/a&gt; link for the relevant documentation. Lab Management usage documentation is available &lt;a href="http://msdn.microsoft.com/en-us/library/dd997438(VS.100).aspx"&gt;here&lt;/a&gt;. Note that Lab Management Beta2 requires System Center Virtual Machine Manager (SCVMM) 2008 R2 RTM that you can download from &lt;a href="http://technet.microsoft.com/en-us/evalcenter/cc793138.aspx"&gt;here&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;To discuss setting up and usage of Lab Management, post your queries on the &lt;a href="http://social.msdn.microsoft.com:80/Forums/en-US/vslab/threads"&gt;Visual Studio Lab Management&lt;/a&gt; discussion forum. If you have found a bug or would like to file a suggestion for future versions, please visit the &lt;a href="http://go.microsoft.com/fwlink/?LinkID=151484"&gt;Microsoft Connect Beta 2 feedback page&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt; In the coming weeks, we will be publishing a series of blogs on this site that go deeper into various usage scenarios. Do visit us often and share your feedback.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9910141" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author></entry><entry><title>Enable Lab Management features for existing Team Projects in Beta2</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/10/19/enable-lab-management-features-for-existing-team-projects-in-beta2.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="1302" href="http://blogs.msdn.com/lab_management/attachment/9909263.ashx" /><id>http://blogs.msdn.com/lab_management/archive/2009/10/19/enable-lab-management-features-for-existing-team-projects-in-beta2.aspx</id><published>2009-10-19T14:15:00Z</published><updated>2009-10-19T14:15:00Z</updated><content type="html">&lt;P&gt;&lt;FONT color=#ff0000&gt;&lt;B&gt;Important&lt;/B&gt;: The instructions in this post only apply to the &lt;B&gt;Beta2&lt;/B&gt; version of Team Foundation Server 2010. For Beta1, see &lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/lab_management/archive/2009/05/22/enable-lab-management-features-for-existing-team-projects.aspx" mce_href="http://blogs.msdn.com/lab_management/archive/2009/05/22/enable-lab-management-features-for-existing-team-projects.aspx"&gt;&lt;FONT color=#ff0000&gt;this post&lt;/FONT&gt;&lt;/A&gt;&lt;FONT color=#ff0000&gt;.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;If you are upgrading your Visual Studio Team Foundation Server (TFS) 2008 to Visual Studio Team Foundation Server 2010 Beta2 and want to enable Lab Management features for your existing projects you will need to follow a set of steps. This blog post covers details about these steps. &lt;/P&gt;
&lt;P&gt;So, first upgrade your TFS server. Then you can configure Lab Management using TFS administration console and start using these features for new projects. To enable Lab Management features on existing team projects use the following steps. &lt;/P&gt;
&lt;P&gt;&lt;B&gt;Pre-requisites&lt;/B&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Install SCVMM server and add lab hosts to host groups. For more details see &lt;A href="http://msdn.microsoft.com/en-us/library/dd692839(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/dd692839(VS.100).aspx"&gt;How to: Set up and Configure Virtual Machine Manager&lt;/A&gt;.&lt;B&gt;&lt;/B&gt; &lt;/LI&gt;
&lt;LI&gt;Install SCVMM admin console on TFS application tier machine. For more details see &lt;A href="http://msdn.microsoft.com/en-us/library/dd386319(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/dd386319(VS.100).aspx"&gt;How to: Configure or Reconfigure Lab Management in Team Foundation Server Application Tier&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;Enable Test Case Management for the project. See &lt;A href="http://blogs.msdn.com/hakane/" mce_href="http://blogs.msdn.com/hakane/"&gt;Hakan’s blog&lt;/A&gt; for a sample script to easily enable Test Case Management features on an existing project. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;B&gt;Step 1 - Configure Lab Management &lt;/B&gt;&lt;/P&gt;
&lt;P&gt;You can configure Lab Management by using the administration console for Team Foundation.&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Click &lt;B&gt;Start&lt;/B&gt;, &lt;B&gt;All programs&lt;/B&gt;, &lt;B&gt;Microsoft Team Foundation Server 2010 Beta 2&lt;/B&gt;, and then click &lt;B&gt;Team Foundation Administration Console&lt;/B&gt;. &lt;/LI&gt;
&lt;LI&gt;In the Administration Console, in the &lt;B&gt;Application Tier&lt;/B&gt; node, click &lt;B&gt;Lab Management&lt;/B&gt;. &lt;/LI&gt;
&lt;LI&gt;Click &lt;B&gt;Configure Lab Management&lt;/B&gt;. &lt;/LI&gt;
&lt;LI&gt;On the &lt;B&gt;Virtual Machine Manager&lt;/B&gt; tab, in &lt;B&gt;VMM Server Name&lt;/B&gt;, type the name of the server that is running Virtual Machine Manager and that you will use to manage the virtual machines. &lt;/LI&gt;
&lt;LI&gt;Click &lt;B&gt;Test &lt;/B&gt;to determine whether Visual Studio Team Foundation Server can communicate with the VMM server. 
&lt;OL&gt;
&lt;LI&gt;If Team Foundation Server service account does not have the appropriate permissions on the specified VMM, a dialog box prompts you for your username and password. &lt;/LI&gt;
&lt;LI&gt;Specify the credentials of an existing member of VMM Administrators Role. Using this username and password, the Team Foundation Server service account will be added to the VMM Administrator Role. 
&lt;UL&gt;
&lt;LI&gt;If Team Foundation Server cannot contact the VMM server, a red x and an error message will appear. &lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;
&lt;LI&gt;In &lt;B&gt;Network Location&lt;/B&gt;, select network location from the drop-down list. Click &lt;B&gt;OK&lt;/B&gt;. 
&lt;UL&gt;
&lt;LI&gt;If network location does not appear in the list, then follow the steps in &lt;A href="http://msdn.microsoft.com/en-us/library/dd692839(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/dd692839(VS.100).aspx"&gt;How to: Set Up and Configure Virtual Machine Manager&lt;/A&gt; to verify that network location has been determined and made known to VMM. &lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;B&gt;Step 2 - Configure Lab Management for the Project Collection hosting upgraded projects &lt;/B&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Click &lt;B&gt;Start&lt;/B&gt;, &lt;B&gt;All programs&lt;/B&gt;, &lt;B&gt;Microsoft Team Foundation Server 2010 Beta 2&lt;/B&gt;, and then click &lt;B&gt;Team Foundation Administration Console&lt;/B&gt;. &lt;/LI&gt;
&lt;LI&gt;In the tree pane, click the &lt;B&gt;Team Project Collections&lt;/B&gt; node under &lt;B&gt;Application Tier&lt;/B&gt;. &lt;/LI&gt;
&lt;LI&gt;Select the project collection hosting upgraded projects. &lt;/LI&gt;
&lt;LI&gt;Click on &lt;B&gt;Lab Management&lt;/B&gt; tab for the selected project collection. &lt;/LI&gt;
&lt;LI&gt;In the results pane, click &lt;B&gt;Configure Library Shares&lt;/B&gt;. &lt;/LI&gt;
&lt;LI&gt;Click &lt;B&gt;Add&lt;/B&gt;, select one or more VMM library shares that this team project collection will use, and then click &lt;B&gt;Add&lt;/B&gt;. You can add a library share to only one team project collection at a time. &lt;/LI&gt;
&lt;LI&gt;Now to configure Host Groups for this collection, select &lt;B&gt;Host Groups&lt;/B&gt; tab. &lt;/LI&gt;
&lt;LI&gt;Click &lt;B&gt;Add&lt;/B&gt;, select one or more host groups that this team project collection will use, and then click &lt;B&gt;Add&lt;/B&gt;. &lt;/LI&gt;
&lt;LI&gt;Click &lt;B&gt;Verify&lt;/B&gt; to verify the status of selected host groups. Click &lt;B&gt;OK&lt;/B&gt;. &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;B&gt;Step 3 - Configure Lab Management for upgraded Team Project(s)&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;Download the zip file attached to this post, and extract it to a local directory such as C:\Upgrade. &lt;/P&gt;
&lt;P&gt;Before you run the script, open “EnableLabManagement.bat” in a text editor and complete the configuration by specifying values for the following: &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Team Foundation Server URL &lt;/LI&gt;
&lt;LI&gt;Name of the team project collection &lt;/LI&gt;
&lt;LI&gt;Name of the team project &lt;/LI&gt;
&lt;LI&gt;Path to TFSLabConfig.exe utility &lt;/LI&gt;
&lt;LI&gt;Set ConfigComplete = 1 to indicate that you’ve completed this step &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;This script will grant default Lab Management permissions to standard security groups, ex. Readers, Contributors, Project Administrators and Project Collection Administrators. &lt;/P&gt;
&lt;P&gt;Rerun the batch file for each existing project, after updating project name in the batch file.&lt;/P&gt;
&lt;P&gt;- Vishal Mehrotra&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;[Edit]&lt;/STRONG&gt; - Modified the script as per the updated syntax.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9909263" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author><category term="ugprade" scheme="http://blogs.msdn.com/lab_management/archive/tags/ugprade/default.aspx" /></entry><entry><title>Test applications on virtual environments and file rich bugs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/07/08/test-applications-on-virtual-environments-and-file-rich-bugs.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/07/08/test-applications-on-virtual-environments-and-file-rich-bugs.aspx</id><published>2009-07-09T00:43:25Z</published><updated>2009-07-09T00:43:25Z</updated><content type="html">&lt;p&gt;You are testing a complex multi-tiered application. You create different configurations, multiple data sets, and test the different combinations in a user-flow. You come across a hard-to-find bug. You file it and are pleased that your effort was well worth it. But the next morning you realize that your developer has resolved your bug as 'No repro' with the comment 'It works on my box'. You are really frustrated and determined to reproduce the bug again and file it, this time with a screenshot and logs. And the bug ping-pong continues. Does this ring a bell??&lt;/p&gt;  &lt;p&gt;Testing and development can be so much more efficient if the bug you filed was rich and actionable in the first place. With Team System 2010, you can automatically &lt;a href="http://blogs.msdn.com/vstsqualitytools/archive/2009/05/26/create-actionable-bugs.aspx"&gt;create highly actionable bugs&lt;/a&gt; with video, screenshots, system info, event logs, and many other types of logs. &lt;/p&gt;  &lt;p&gt;Well, there are these nasty configuration issues that will still be hard-to-reproduce for the developer on his environment. What if you could attach the environment snapshot with the bug itself, so the developer can connect to the machines in the same state as they were when you found the bug, and reproduce the problem?? We have good news - with lab management, you can do exactly that. Let's find out how.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;After reading this article, you'll be able to:&lt;/b&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Configure your virtual environment to run tests. &lt;/li&gt;    &lt;li&gt;Run manual tests on the application deployed in the environment. &lt;/li&gt;    &lt;li&gt;File a rich bug with your virtual environment snapshot attached to it. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This article is divided into two parts. The first part talks about how to create a virtual environment for testing. And the second part talks about how to run manual tests on the virtual environment and file actionable bugs. Before we end, we'll also show you what the rich bug looks like to the developer and how he can use it.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;I. Setup a virtual environment for testing&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Here is a block diagram of Lab Management components. To be able to run tests and collect logs from environments, you need to first install and configure a test agent controller with your TFS Team Project Collection. Next, you need to install test agent and lab agent on the virtual machines that'll be a part of your environment. You can import the virtual machine and create environment that is ready for testing. Finally, create a test settings that specifies the different logs to be collected from various roles of the environment while you test your application.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb.png" width="554" height="387" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;1. In order to run tests and collect logs from environments, you need to first setup your test agent controller. The steps to install a test agent controller and configure it with your TFS Team Project Collection are described in steps 15-17 of the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9df71545-4524-451b-8a17-9925b64010d2&amp;amp;displaylang=en"&gt;Lab Management Beta1 setup guide&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;2. The next step is to install agents on the virtual machines that'll be part of your environment. This can be done when you create virtual machines from SCVMM. You need to install test agent and lab agent on the virtual machines to be able to collect logs and run tests on these machines. Steps 20 and 21 of the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9df71545-4524-451b-8a17-9925b64010d2&amp;amp;displaylang=en"&gt;setup guide&lt;/a&gt; describe how to install lab agent and test agent on the virtual machine.&lt;/p&gt;  &lt;p&gt;3. Import virtual machines and create environment: &lt;a href="http://blogs.msdn.com/lab_management/archive/2009/06/02/creation-and-working-with-virtual-environments.aspx"&gt;This post&lt;/a&gt; describes how to import a virtual machine in lab as a 'virtual machine template' and create an environment with it. These steps can also be founding in the 'Create a virtual environment' section of &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9df71545-4524-451b-8a17-9925b64010d2&amp;amp;displaylang=en"&gt;setup guide&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;While you are creating the virtual environment, ensure that on the 'Advanced' page, the testing capability is turned on, and the test agent controller you setup has been selected. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_12.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_5.png" width="554" height="354" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Start the environment and ensure that there are no errors. Once the machines in the environment have started and the testing capability status is 'Ready', you are all set to run tests on the app deployed in the environment.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_14.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_6.png" width="304" height="265" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;4. Create test settings: Finally, you need to create a test settings that define what logs to collect (and also where to execute tests in case of automated tests) while you run your tests. You now create a new test settings for the roles in your environment.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Open Microsoft Test and Lab Manager (henceforth called MTLM) and go to 'Lab Center' -&amp;gt; Test settings. Click on 'New' to create new test settings. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_16.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_7.png" width="554" height="444" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Enter name and description. Choose testing type as manual (to be used to run manual tests) and select the option to 'Additionally collect data or perform system actions on remote machines using an environment'. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_18.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_8.png" width="554" height="309" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Go to 'Environments' page. Select the environment you created. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_20.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_9.png" width="304" height="258" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Skip the 'Test machines' page and go to 'Data and diagnostics'. Here you can define what logs you want to collect while the tests are running. 'Local' refers to the machine from which you'll run the tests using test runner. Click on the various roles and define the logs you need to be collected. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_22.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_10.png" width="554" height="348" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Verify the settings in the 'Summary' page and click Finish to create your test settings. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;So far, we have seen how to configure the virtual environment to run tests and created a test settings. The next section talks about actually running the tests on the virtual environment and filing rich bugs.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;II. Run tests and file actionable bugs&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;You have &lt;a href="http://blogs.msdn.com/lab_management/archive/2009/06/02/creation-and-working-with-virtual-environments.aspx"&gt;created your virtual environment&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/lab_management/archive/2009/05/27/application-build-deploy-and-test-automation-in-lab-management.aspx"&gt;deployed your application&lt;/a&gt; on the environment using the workflow. In the meanwhile, the test team has &lt;a href="http://blogs.msdn.com/vstsqualitytools/archive/2009/06/16/10-4-episode-23-an-introduction-to-manual-testing.aspx"&gt;created a test plan&lt;/a&gt; for this iteration of the product cycle and added test cases to it. You are all set to test the application. Now, we'll find out how to run manual tests on an application deployed in the virtual environment and create highly actionable bugs, which reproduce for the developer.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Run tests and file rich bugs&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;1. Go to the Testing Center in MTLM and select the Test tab. Select your test plan and the set of test cases you want to run. Click on &amp;quot;Run with options &amp;quot; and choose your test settings and virtual environment.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_24.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_11.png" width="554" height="320" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_26.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_12.png" width="304" height="216" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;2. The Test Runner window is launched (by default it will be docked to the left side of the screen). Click on &amp;quot;Start test&amp;quot;. Launch your client window (IE/rich client) and start running the steps in your test case. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_30.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_14.png" width="204" height="397" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;3. While running your test cases, when you find a 'hard-to-repro' bug, you can take a snapshot of the environment by clicking on &amp;quot;Take Snapshot&amp;quot; action under &amp;quot;Lab Actions&amp;quot;. The snapshot operation will take around 15-30 seconds. Once the snapshot is completed, you can observe the .lvr file (link to the snapshot) in the bottom pane. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_28.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_13.png" width="554" height="378" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;4. Now, create a new bug for the problem you just observed by clicking on 'New bug' action in the toolbar. In the new bug dialog, you can see that the repro steps are automatically filled in from your test case. The 'System Info' tab has information about your local machine as well as the test machines in the environment. Also note that the 'Other links' tab has the different logs from your environment as configured in your test settings and the link to the environment snapshot (.lvr file). Enter a title and save the bug.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_32.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_15.png" width="224" height="304" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_34.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_16.png" width="454" height="417" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;5. As you are running your test cases, note that you can connect to the virtual machines in the environment using the &amp;quot;Connect to Environment&amp;quot; option under &amp;quot;Lab Actions&amp;quot; menu. Also note that the .lvr file just has a link to the environment snapshot. The link will be resolved dynamically while the developer clicks on it. The size of the link is only around 1 KB. The actual snapshots are stored on the Hyper-V hosts itself, and use the differencing disk technology to store the changes from last snapshot only. Hence you can attach multiple snapshots to a bug, if needed.&lt;/p&gt;  &lt;p&gt;6. Once you are done with testing, click &amp;quot;Save and close&amp;quot; to save the results and restore back to MTLM window. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Debugging using environment snapshot&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;1. Launch Visual Studio 2010. Connect to your Team Project using Team Explorer. Open the query 'Active bugs' under 'Work Items -&amp;gt; Team Queries' and open the bug you just filed.&lt;/p&gt;  &lt;p&gt;2. If you go to the &amp;quot;Other Links&amp;quot; section of the bug, you will notice that it contains the link to the snapshot of the environment. Double click on this file to connect to the environment snapshot.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_36.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_17.png" width="554" height="371" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;3. You will see a dialog with multiple options to connect to the environment. Let's spend a moment to understand what they mean.&lt;/p&gt;  &lt;p&gt;a. &amp;quot;Connect to the saved snapshot in this environment&amp;quot; - Use this option if you want to restore the exact state of the virtual environment at which the snapshot was taken. If you choose this option, you might end up disconnect any user currently using this environment and this might lead to loss of their work. &lt;/p&gt;  &lt;p&gt;b. &amp;quot;Connect to the Environment in its current state&amp;quot; - Use this option if you just want to connect to the virtual environment in its current state. There is a possibility that you might still disconnect someone connected to this environment, but you will not restore the environment's state.&lt;/p&gt;  &lt;p&gt;c. &amp;quot;Connect to a new instance of this environment&amp;quot; - You can use this option to create your own copy of the environment. This way you will not disturb anyone using the environment currently. However, it will take few minutes for your new environment to be created and it is recommended to use 'Network isolation' capability on environments if you intended to run multiple copies of it.&lt;/p&gt;  &lt;p&gt;Note that this option is only available to you if you have stored your virtual environment in the library as a template. You can do so from Lab Center -&amp;gt; Environments and choosing 'Save as Template' action on the environment. If the environment hasn’t been stored in the library, this option is not available.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_38.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_18.png" width="554" height="368" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;4. Choose the most appropriate option and click on 'Connect'. This brings up the lab environment viewer and connects you to the machines in the environment. You can now login to the machines, reproduce the error, and debug its root cause.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_40.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/Testapplicationsonvirtualenvironmentsand_2B9E/image_thumb_19.png" width="554" height="421" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;To sum up, you have seen how you can configure your virtual environment for testing, how to run tests and file rich bugs, with environment snapshots so that the developer can always reproduce the problem and debug it.&lt;/p&gt;  &lt;p&gt;We hope you liked this and look forward to hear your comments.&lt;/p&gt;  &lt;p&gt;Darshan Desai, Program Manager and Bhuvaneshwari K, SDET&lt;/p&gt;  &lt;p&gt;Visual Studio Team Lab Management&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9824894" width="1" height="1"&gt;</content><author><name>darshand</name><uri>http://blogs.msdn.com/members/darshand.aspx</uri></author><category term="Testing" scheme="http://blogs.msdn.com/lab_management/archive/tags/Testing/default.aspx" /><category term="lab management" scheme="http://blogs.msdn.com/lab_management/archive/tags/lab+management/default.aspx" /><category term="snapshot" scheme="http://blogs.msdn.com/lab_management/archive/tags/snapshot/default.aspx" /><category term="no repro" scheme="http://blogs.msdn.com/lab_management/archive/tags/no+repro/default.aspx" /><category term="ALM" scheme="http://blogs.msdn.com/lab_management/archive/tags/ALM/default.aspx" /><category term="Virtual Environment" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+Environment/default.aspx" /><category term="Environments" scheme="http://blogs.msdn.com/lab_management/archive/tags/Environments/default.aspx" /></entry><entry><title>Creating Virtual Machines for Lab Management</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/07/03/creating-virtual-machines-for-lab-management.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/07/03/creating-virtual-machines-for-lab-management.aspx</id><published>2009-07-03T14:16:00Z</published><updated>2009-07-03T14:16:00Z</updated><content type="html">&lt;P&gt;To create virtual environments in Microsoft Test and Lab Manager, you first need to have virtual machines in your project library share. Lab Management does not provide the functionality to create fresh virtual machines. You have to use Hyper-V or SCVMM in order to create these initial or golden virtual machines, and then "import" them into a project. The import in Beta1 is done by 'creating a new virtual machine' using Microsoft Test and Lab Manager.&lt;/P&gt;
&lt;P&gt;Before moving further, let me clarify that the terminology used in Beta1 is changing for our next release. A lot of customers said that they were confused about the use of our&amp;nbsp;phrase 'create new virtual machine' in library. For this blog, I will make two clarifications and continue to use Beta1 terminology. First, when we "create a new virtual machine" in a project library share, we are just importing a virtual machine managed by SCVMM into lab. We are not really creating a fresh copy of the virtual machine. Second, our term virtual machine in project library share can refer to either a Virtual Machine or a Virtual Machine Template in SCVMM. Thanks to your feedback, we are going to clean this up and remove some of the confusion surrounding this in Beta2.&lt;/P&gt;
&lt;P&gt;Coming back to our topic, in order to import a VM into lab, you either need to have a virtual machine or a virtual machine template already in SCVMM library. So, the question is, how to create a VM or a VM template in SCVMM library? &lt;/P&gt;
&lt;P&gt;There are several ways and some of our customers (especially those who are new to SCVMM) were asking for best practices around this. In this blog, we will talk about some of these practices. If you have discovered something else that works for you, please share it with us and the rest of the community.&lt;/P&gt;
&lt;P&gt;&lt;U&gt;Starting point&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;In order to create a VM or VM template in SCVMM, you can start from one of the following:&lt;/P&gt;
&lt;P&gt;(a) Scratch: You have got nothing. You want to create a fresh VM, then install OS, and any applications + agents into that VM.&lt;/P&gt;
&lt;P&gt;(b) An existing VHD: You have a VHD that already has the OS, applications, and agents installed. You need to turn this into a VM or VM template that can be later used in Lab Management.&lt;/P&gt;
&lt;P&gt;(c) An existing physical machine: You have a physical machine that you want to convert into a virtual machine and then use that to create environments in Lab Management.&lt;/P&gt;
&lt;P&gt;&lt;U&gt;Target&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;You need to decide whether you would like to import a VM or a VM Template -&lt;/P&gt;
&lt;P&gt;You can think of the VM as a 'fully baked' computer. It will have OS, apps, and agents installed; it has a computer name, an IP address, etc. When you&amp;nbsp;import a VM into lab and use it to create several copies of environments, you need to use network isolation - a feature in Lab Management that prevents network conflicts. The advantage of using VMs is that you will get exact replicas of what you have created and it saves you time from re-installing or re-configuring your application.&lt;/P&gt;
&lt;P&gt;A VM Template is a 'half baked' computer. The OS inside the VM is generalized by running a tool called Sysprep, which essentially removes the instance specific information from the image. When a VM Template is imported into lab, you can use it create multiple copies of the environments without network isolation feature. Each copy of the VM is customized with a unique computer name so that there are no network conflicts.&lt;/P&gt;
&lt;P&gt;To summarize, create a VM in SCVMM library if you plan to use network isolation or don't plan to clone environments. Create a&amp;nbsp;VM Template in SCVMM library if you do not plan to use network isolation.&lt;/P&gt;
&lt;P&gt;&lt;U&gt;Recommended approaches for creating VMs and VM Templates&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;The following table shows the starting points on the left and targets on the top. Find the box that suits your needs and see the recommended approach for creating a VM or VM Template. Each step is usually a hyperlink to more detailed documentation in SCVMM or Hyper-V.&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-yfti-tbllook: 1184; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt" cellSpacing=0 cellPadding=0 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="HEIGHT: 44.9pt; mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 69.2pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 44.9pt; mso-border-alt: solid black .5pt; mso-border-themecolor: text1" vAlign=top width=92&gt;
&lt;P&gt;Target&lt;/P&gt;
&lt;P&gt;-----&lt;/P&gt;
&lt;P&gt;Starting point&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 184.3pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 44.9pt; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" vAlign=top width=246&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Virtual Machine 
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 208.6pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 44.9pt; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1" vAlign=top width=278&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Virtual Machine Template 
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="HEIGHT: 77.35pt; mso-yfti-irow: 1"&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 69.2pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 77.35pt; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1" vAlign=top width=92&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Scratch 
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 184.3pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 77.35pt; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=246&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Using SCVMM Admin Console&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;&lt;A href="http://technet.microsoft.com/en-us/library/cc956079.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc956079.aspx"&gt;Create a VM on a host from a blank disk using SCVMM&lt;/A&gt;. &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Install OS, software, and agents in the VM.&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Shutdown the VM. &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Store the VM to a SCVMM library share that is used for Lab Management.&lt;/DIV&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;(OR) Using Hyper-V Manager&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;A class="" href="http://technet.microsoft.com/en-us/library/cc732470(WS.10).aspx#BKMK_step3" mce_href="http://technet.microsoft.com/en-us/library/cc732470(WS.10).aspx#BKMK_step3"&gt;Create a VM from a blank disk using Hyper-V&lt;/A&gt;.&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;Install software and agents in the VM. &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;Export the VM to a SCVMM library share that is used for Lab Management. To do this,&amp;nbsp;right click&amp;nbsp;the VM in Hyper-V manager, and click on Export.&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;Fix the ScopeOfResidence if the Hyper-V host is not Windows Server 2008 R2 (see Additional notes below).&lt;/DIV&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 208.6pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; HEIGHT: 77.35pt; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=278&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Using SCVMM Admin Console&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;A href="http://technet.microsoft.com/en-us/library/cc956079.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc956079.aspx"&gt;Create a VM on a host from a blank disk using SCVMM&lt;/A&gt;. &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;Install OS, software, and agents in the VM.&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;Shutdown the VM. &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;A href="http://technet.microsoft.com/en-us/library/cc917930.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc917930.aspx"&gt;Create a template from the VM and select a library share that is used for Lab Management&lt;/A&gt;. &lt;/DIV&gt;&lt;/LI&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/OL&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 2"&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 69.2pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1" vAlign=top width=92&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Existing VHD 
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 184.3pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=246&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Using SCVMM Admin Console&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV&gt;Copy the VHD to a SCVMM library share.&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;A href="http://technet.microsoft.com/en-us/library/cc956091.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc956091.aspx"&gt;Create a VM in library share from an existing disk using SCVMM&lt;/A&gt;.&amp;nbsp;Select the library share that is used for Lab Management.&lt;/DIV&gt;&lt;/LI&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/OL&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 208.6pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=278&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Using SCVMM Admin Console&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV&gt;Copy the VHD to a SCVMM library share that is used for Lab Management. The VHD should already have the OS installed and identity information removed using the Sysprep tool. &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;A href="http://technet.microsoft.com/en-us/library/cc956136.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc956136.aspx"&gt;Create a template from the VHD&lt;/A&gt;.&lt;/DIV&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 3; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: black 1pt solid; WIDTH: 69.2pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1" vAlign=top width=92&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Physical machine 
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 184.3pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=246&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Using SCVMM Admin Console&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;A href="http://technet.microsoft.com/en-us/library/cc956104.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc956104.aspx"&gt;Convert a physical machine into a virtual machine&lt;/A&gt;. &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;Store the VM to a SCVMM library share that is used for Lab Management. &lt;/DIV&gt;&lt;/LI&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/OL&gt;&lt;/TD&gt;
&lt;TD class="" style="BORDER-RIGHT: black 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: medium none; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: medium none; WIDTH: 208.6pt; PADDING-TOP: 0cm; BORDER-BOTTOM: black 1pt solid; mso-border-alt: solid black .5pt; mso-border-themecolor: text1; mso-border-left-alt: solid black .5pt; mso-border-left-themecolor: text1; mso-border-top-alt: solid black .5pt; mso-border-top-themecolor: text1; mso-border-bottom-themecolor: text1; mso-border-right-themecolor: text1" vAlign=top width=278&gt;
&lt;P class=MsoNormal style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal"&gt;Using SCVMM Admin Console&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;A href="http://technet.microsoft.com/en-us/library/cc956104.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc956104.aspx"&gt;Convert a physical machine into a virtual machine&lt;/A&gt;. &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV&gt;&lt;A href="http://technet.microsoft.com/en-us/library/cc917930.aspx" mce_href="http://technet.microsoft.com/en-us/library/cc917930.aspx"&gt;Create a template from the VM and select a library share that is used for Lab Management&lt;/A&gt;.&lt;/DIV&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;&lt;U&gt;Additional notes:&lt;/U&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;In all the above, use the same SCVMM server that is used for Lab Management as well.&lt;/LI&gt;
&lt;LI&gt;Wherever mentioned copy the object to the same SCVMM library share that is used for Lab Management.&lt;/LI&gt;
&lt;LI&gt;If you create a VM template, do not set sensitive information such as Administrator password, Domain credentials, and Product key using SCVMM. When the VM template is imported into Lab Management, this sensitive information is dropped.&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;This article does not cover how to install lab or other agents into your golden VMs. For more information about this, please refer to the &lt;A class="" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9df71545-4524-451b-8a17-9925b64010d2&amp;amp;displaylang=en" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9df71545-4524-451b-8a17-9925b64010d2&amp;amp;displaylang=en"&gt;lab setup guide&lt;/A&gt;.&lt;/P&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;P&gt;Whenever you use Hyper-V to create a VM and export it, you have to perform the following additional steps to be able to use the VM from SCVMM or Lab Management.&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;UL&gt;
&lt;UL&gt;
&lt;LI&gt;Go to the Virtual Machines folder in the export location (say C:\export\My VM\Virtual Machines) and open the &amp;lt;guid&amp;gt;.exp file in a text editor. &lt;/LI&gt;
&lt;LI&gt;Search for the tag &amp;lt;ScopeOfResidence&amp;gt; within that file. Clear the value that exists between the &amp;lt;Value&amp;gt;&amp;lt;/Value&amp;gt; tags. The following screen shows an example of this.&lt;/LI&gt;
&lt;LI&gt;Save the file.&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreatingVirtualMachinesforLabManagement_DB11/image_2.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreatingVirtualMachinesforLabManagement_DB11/image_2.png"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=372 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreatingVirtualMachinesforLabManagement_DB11/image_thumb.png" width=400 border=0 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreatingVirtualMachinesforLabManagement_DB11/image_thumb.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;U&gt;What's next?&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;Now that you have a VM or VM template in SCVMM library share, go to Microsoft Test and Lab Manager -&amp;gt; Lab Center -&amp;gt; Library -&amp;gt; Virtual Machine Templates and import it by clicking on 'New'. Once the VM or VM Template is imported into lab, you can use it in creating environments.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9816660" width="1" height="1"&gt;</content><author><name>vijaym</name><uri>http://blogs.msdn.com/members/vijaym.aspx</uri></author><category term="Environments" scheme="http://blogs.msdn.com/lab_management/archive/tags/Environments/default.aspx" /><category term="Sysprep" scheme="http://blogs.msdn.com/lab_management/archive/tags/Sysprep/default.aspx" /><category term="Virtual Machines" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+Machines/default.aspx" /><category term="Library" scheme="http://blogs.msdn.com/lab_management/archive/tags/Library/default.aspx" /><category term="VM Templates" scheme="http://blogs.msdn.com/lab_management/archive/tags/VM+Templates/default.aspx" /><category term="Import" scheme="http://blogs.msdn.com/lab_management/archive/tags/Import/default.aspx" /></entry><entry><title>Networking basics for lab management - Part I</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/06/08/networking-basics-for-lab-management-part-i.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/06/08/networking-basics-for-lab-management-part-i.aspx</id><published>2009-06-08T11:48:00Z</published><updated>2009-06-08T11:48:00Z</updated><content type="html">&lt;P&gt;How are the virtual machines in a Lab Environment connected to each other and to other machines? Can I have physical hosts that are distributed across networks? What is the significance of network location in Team Foundation Administration Console? What if I want more control on how virtual machines are networked? If I turn on network isolation capability, what happens to the network of an environment? We will try to answer questions such as these in this series on 'networking basics for lab management'. Some of this information is useful for lab administrators in planning the physical network topology of the lab. Knowledge of how environments are networked allows development teams understand how their applications might behave when deployed into a virtual Lab Environment.&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Physical networking&lt;/STRONG&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;Before getting into networking of environments, let us spend some time on the networking of lab infrastructure machines - physical hosts, library servers, SCVMM server, TFS server, and Test and build controller machines. Needless to say, there has to be IP connectivity between all these machines. SCVMM communicates with its agents residing on physical hosts and library servers. TFS server communicates with SCVMM and with test/build controller machines.&lt;/P&gt;
&lt;P&gt;The clients from which you run "Microsoft Test and Lab Manager" or VSTS need IP connectivity with TFS and with test/build controller machines.&lt;/P&gt;
&lt;P&gt;While having IP connectivity between the machines is the minimum requirement, there is more you need to do to get good performance. It is highly recommended that all the physical hosts and library servers have Gigabit Ethernet connectivity to each other. This means that all of them should have Gigabit Ethernet cards, and should be directly connected to a shared Gigabit networking switch. This ensures that the data transfers (think of the large VMs that get copied from one machine to another) between them happen with acceptable performance. As an example, copying an Environment of size 30 GB from a library server to physical host over BITS (Background Intelligent Transfer Service - this is the protocol used by SCVMM to copy VMs) may take about an hour in a 100 Mbps network, and around 10 mins in a Gigabit network. To accommodate larger labs, you can use multiple switches. The idea is to keep the end-to-end bandwidth between hosts and library servers close to a Gigabit.&lt;/P&gt;
&lt;P&gt;This guidance implies that all the hosts and library servers are on the same network segment. If you have a larger lab or if you need to distribute physical machines across network segments, Lab Management allows you to do that. You can still get the desired performance by having a Gigabit network within each segment and carefully grouping the hosts that are co-located into a SCVMM host group. By allocating such host groups and co-located library servers to Team Projects, you can ensure that data transfers only happen between machines that are connected on a Gigabit network.&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Networking on a host&lt;/STRONG&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;Each physical host in the lab may be connected to multiple networks. Multiple networks are typical for separating data traffic and management traffic. For each network that a host is connected to, there is a &lt;EM&gt;network location&lt;/EM&gt; that identifies that network. Using SCVMM, you can see the number of networks each host is connected to and their network locations. Select the host in VMM admin console and view its properties. The following figure shows a host that has four network network adapters, but is connected to only one network.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_2.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_2.png"&gt;&lt;IMG style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=404 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb.png" width=392 border=0 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;The 'location' of that network in this example is corp.microsoft.com. If the network location is empty, you can click on the 'Override discovered network location' checkbox, and type in the name of a location. Before running lab, you need to ensure that all hosts are connected to a common network location.&lt;/P&gt;
&lt;P&gt;Use the TFS admin tool to configure this common location as the 'preferred network location' for lab.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_6.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_6.png"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=423 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_2.png" width=554 border=0 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_2.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;The &lt;EM&gt;preferred network location&lt;/EM&gt; identifies the network to which all virtual machines created by lab should be connected to. And, the network adapter on a host that is connected to the preferred network location is called &lt;EM&gt;preferred network adapter&lt;/EM&gt; for that host.&lt;/P&gt;
&lt;P&gt;PS1: In VSTS Lab Management 2010 Beta1, if you change the network location after setting it once, you have to reset IIS and restart the TFS job agent service on TFS machine. This is fixed post Beta1.&lt;/P&gt;
&lt;P&gt;PS2: If you change the network location after setting it once, virtual machines that are already deployed are not affected. In other words, they remain connected to the old network location. To make them connect to the new location, you have to store the environments in library, and redeploy them. Or, more simply, you (admin) can use SCVMM and manually change the connectivity of each VM.&lt;/P&gt;
&lt;P&gt;One more thing that you need to ensure for every physical host is that it has an &lt;EM&gt;external virtual network&lt;/EM&gt; that is connected to the preferred network adapter. You can check this by using the Hyper-V manager or SCVMM admin console. The figure below shows the Hyper-V manager on a host. By clicking on the Virtual network manager, you will be able to see all the virtual networks that are configured on that host. Hyper-V supports three forms of virtual networks - external, internal, and private. Ensure that there is one virtual network that is marked as external and is connected to the preferred network adapter. &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_8.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_8.png"&gt;&lt;IMG style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=401 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_3.png" width=552 border=0 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_3.png"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You can easily verify that each host in a host group is properly networked by using the Team Foundation Administration Console. When you add a host group to a Team Project Collection or when you open an existing Team Project Collection that is configured for Lab Management, you can verify that all hosts in the host group satisfy the above networking requirements. Open the Project Collection level Lab Management Settings by clicking on 'Configure Host Groups' as shown in the figure below, and press the 'Verify' button.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_9.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_9.png"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=389 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_1.png" width=554 border=0 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_1.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;Networking for an environment&lt;/STRONG&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;Now that we have the hosts physically networked and lab configured in TFS, we are all set to understand how environments are networked in VSTS Lab Management. In this post, let us focus on environments that are not network isolated.&lt;/P&gt;
&lt;P&gt;Let us say we created an environment with two virtual machines. VSTS Lab Management ensures that each of the virtual machines has one emulated network adapter that is connected to the preferred network location as shown in the figure below. If this means that a new network adapter has to be created and attached to the virtual machine during the creation process, VSTS Lab Management does so.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_15.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_15.png"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=287 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_6.png" width=371 border=0 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_6.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;To walk you through the above figure, there are two physical hosts A and B. The preferred network location configured in Team Foundation Administration Console is 'corp.microsoft.com'. One Lab Environment with two virtual machines has been created. Lab Management placed the first virtual machine (VM1) on Host A, and the second virtual machine (VM2) on Host B. N2 is the preferred network adapter on Host A, since it has a network location that matches the lab's preferred network location. N1 is the preferred network adapter on Host B. Lab Management connects VM1 to an external virtual network of N2 on Host A. VM2 is connected to an external virtual network of N1 on Host B.&lt;/P&gt;
&lt;P&gt;&lt;U&gt;&lt;STRONG&gt;More flexible networking for an environment&lt;/STRONG&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P&gt;What if you wanted your environment to be connected to a second network location (say test.microsoft.com in the above example) in addition to the preferred network location? Lab Management does not currently expose this flexibility through its APIs or client. However, you can get around this by using SCVMM. This is what you need to do. When creating the VM in SCVMM, insert a network adapter into the VM and set its network location to 'test.microsoft.com'. The following figure shows how you can do that in SCVMM. While creating a new virtual machine, configure the network location of an adapter to be 'test.microsoft.com' under the 'Configrue Hardware' step.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_17.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_17.png"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=342 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_7.png" width=402 border=0 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/NetworkingbasicsforlabmanagementPartI_F190/image_thumb_7.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Now import this VM into lab. When an environment is created from that VM, VSTS Lab Management inserts a new network adapter into the cloned VM with network location set to 'corp.microsoft.com'. As a result, the newly created VM will end up with two network adapters - one connected to 'corp.microsoft.com', and one connected to 'test.microsoft.com.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;Questions, Comments, Feedback?&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Our goal was to provide a simple experience for the testers and developers using Microsoft Test and Lab Manager, and not to burden them with the intricacies of networking their environments. Hence, we made it easy for the most common case, where all virtual machines in an environment are connected to one network. For certain other complex situations, SCVMM can be used to configure the networking of a VM before it is imported into lab. &lt;/P&gt;
&lt;P&gt;We would like to hear from you. Does this networking scheme satisfy your application needs? What other features would you like to see? If you have more questions or comments, please post them to this blog.&lt;/P&gt;
&lt;P&gt;In Part 2, I will describe how the networking of a 'network-isolated' Environment looks like.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9707737" width="1" height="1"&gt;</content><author><name>vijaym</name><uri>http://blogs.msdn.com/members/vijaym.aspx</uri></author></entry><entry><title>Creating and Working with Virtual Environments</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/lab_management/archive/2009/06/02/creation-and-working-with-virtual-environments.aspx" /><id>http://blogs.msdn.com/lab_management/archive/2009/06/02/creation-and-working-with-virtual-environments.aspx</id><published>2009-06-02T08:36:00Z</published><updated>2009-06-02T08:36:00Z</updated><content type="html">&lt;P&gt;Today as we build more and more complex applications the complexity of development and testing environments have increased significantly. Development and testing of complex N tier application on single machine results in late discovery of bugs in pre-production or worse in production environments. Ideally we would like to develop and test applications in an environment which is as close to production as possible (due to cost and other infrastructure limitations we may never get identical). Unfortunately today setting up these N tier environments on physical machines is a time consuming and error prone process and keeps dev/tests focus away from their core activities. This results in not only loss of productivity but also impact product quality.&lt;/P&gt;
&lt;P&gt;VSTS Lab Management supports creation of virtual environment in minutes as oppose to days. This allows development and test teams to develop and test code against production like environments without spending days in setup which results in improved productivity and quality. As setting up these environments is so easy, it encourages sharing of hardware resources across the team and self service as oppose to dependence on a IT Administrators. With sharing and self service your total cost of ownership of running labs reduces significantly. In this post we’ll cover how to create and work with virtual environments.&lt;/P&gt;
&lt;P&gt;A virtual environment is defined as a collection of virtual machines (VM). e.g. a typical 3 tier application environment will have 3 virtual machines namely client , web server and database server. In order to create this environment you first need the individual virtual machines which can play different roles as mentioned above namely client, web server etc. &lt;/P&gt;
&lt;P&gt;Since majority of applications will have similar needs as above, Lab Management enables you to create these basic virtual machines (also known as Golden VMs) once and store in the library as virtual machine templates so that any time you want to create an environment you can reuse these virtual machine templates.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Creating Virtual Machine Template&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;1. First step is to have the base virtual machine which you want to use as virtual machine template (Golden VM) for different environments. If you already have a virtual machine just copy the virtual machine folder with all the necessary files into the System Centre Virtual Machine Manager (SCVMM) library share. In case you do not have a virtual machine you can easily create one using SCVMM Admin Console which comes with Lab Management SKU (we will cover this in more detail in one of the upcoming posts). &lt;/P&gt;
&lt;P&gt;2. Now launch “Microsoft Test and Lab Manager” from All Programs -&amp;gt; Microsoft Visual Studio 10.0&amp;nbsp; -&amp;gt; Microsoft Test and Lab Manager&lt;/P&gt;
&lt;P&gt;3. Connect to the TFS Server and your team project. Click on “Don’t Set context” when prompted. Go to Lab Center (from top left) and click on “Virtual Machine Templates” on the ‘Library’ activity.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_14.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_14.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_6.png" width=563 height=123 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_6.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;4. Click “New” to create a virtual machine template. This opens up the wizard where first you need to select the library share where you want&amp;nbsp; Lab Management to store this virtual machine template. &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_12.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_12.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_5.png" width=563 height=391 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_5.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;5. Then select the virtual machine from SCVMM library share by clicking the browse button. The below list shows the virtual machines which you have created earlier either using SCVMM Admin console or copied into SCVMM library share (in case you already had virtual machine).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_16.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_16.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_7.png" width=389 height=289 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_7.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;In this list you only see virtual machines available in SCVMM library shares. So if you have existing VHD which you&amp;nbsp;want to create a virtual machine template from, use SCVMM to create a VM&amp;nbsp;using this VHD, and store it in the library. &lt;/P&gt;
&lt;P&gt;6. After selecting the virtual machine now you can enter the name and description for this virtual machine template. Also you can assign a role to help select appropriate virtual machine template during environment creation e.g. all the virtual machine templates with different configurations (version, OS etc) of SQL server can be assigned role as “Database Server”. Similarly all the virtual machine templates with different configurations (version, OS etc) of IIS server can be assigned role as&amp;nbsp; “Web Server” etc.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_18.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_18.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_8.png" width=520 height=391 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_8.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;7. That's it!. Just press finish and you have created your first virtual machine template as you can see in your list of virtual machine templates. &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_22.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_22.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_10.png" width=520 height=387 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_10.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;8. Repeat above steps to create another virtual machine template for IIS Server. &lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Creating Virtual Environment&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Now as you have created virtual machine templates (Golden VMs) you are all set to create your first virtual environment. &lt;STRONG&gt;Majority of team members in your team can start directly here&lt;/STRONG&gt; as once someone creates a set of virtual machine templates everyone can start using them to create environments.&lt;/P&gt;
&lt;P&gt;1. Click on “Environment” activity in Lab Center. Click “New” to create a new environment.&lt;/P&gt;
&lt;P&gt;2.&amp;nbsp; Provide a name and optionally a description for the environment you are about to create. Let’s give it a name “Dinner Now Test Environment” as we will use this for testing Dinner Now application.&lt;/P&gt;
&lt;P&gt;3. Select Virtual as the type of environment&lt;/P&gt;
&lt;P&gt;4. Select one of the host groups from the host group drop down list &amp;amp; click “Next”&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_24.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_24.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_11.png" width=520 height=393 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_11.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;5. From the list of available roles, select the Database Server role and the Web Server role, by clicking on each and then clicking on the Add button. Note that you can also add your own roles by clicking on the New Role button on top of the roles lists. Click “Next”.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_26.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_26.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_12.png" width=520 height=391 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_12.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;6. Assign a VM template for each of the roles. On the right side you can see the list of VM templates from library as created in earlier step. e.g. Assign VM template Win2k3-IIS to Web Server role and Win2k3-SQL to Database server role. &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_28.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_28.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_13.png" width=520 height=391 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_13.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;7. That’s it! Just press finish and your first virtual environment creation is started. Virtual environment creation may take several minutes depending on number and size of VM templates selected above.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_30.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_30.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_14.png" width=520 height=391 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_14.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Working with Virtual Environment&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Like physical environment you can start, stop and connect to different machines of your virtual environment. In addition, virtual environment provides some advantages over physical environments such as snapshot &amp;amp; restore. You can take a snapshot of your complete virtual environment (data and memory state of all machines) at a point in time and later restore that snapshot. This is really useful to debug complex bugs which are difficult to reproduced on a developer machine as now developer has access to the environment with the same configuration, same build and same meta data when the bug was found. With this capability you can significantly reduce the no. of non-reproducible bugs. Stay tuned for more details on this scenario in an upcoming blog post.&lt;/P&gt;
&lt;P&gt;To work with any environment you can just double click on any of the virtual machines of the environments and it opens up “Lab Environment Viewer” tool. This tool allows you to connect to different machines of the environment without remembering their names/IP addresses for terminal services (TS) sessions. Also Lab Environment Viewer shows you all the virtual machines on the left and avoid painful switching between TS sessions. While you are working on one of the machines you can also get a quick preview of other machines with the cool thumbnail view.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_34.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_34.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_16.png" width=620 height=496 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_16.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;To start, stop, snapshot or pause an environment you can simply click the necessary action from the environment tool-bar at the top-left corner. when you perform an action it applies to all the virtual machines of the environment. So to snapshot a multi machine environment you just need to take snapshot for the environment as oppose to individually taking snapshot of each machine.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_36.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_36.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_17.png" width=620 height=466 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_17.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;All the snapshots of the environment are available under snapshots tab of environment viewer. At any point of time you can revert your environment to any of these snapshots with a single click of revert and all the machines will be restored to that snapshot. e.g. you may want to take a snapshot after the environment is setup first time calling it “Clean state” and than deploying regular builds on this environment can be simplified significantly as you can revert the environment to clean state before every build deployment. Lab Management also offers great automation to &lt;A href="http://blogs.msdn.com/lab_management/archive/2009/05/27/application-build-deploy-and-test-automation-in-lab-management.aspx" mce_href="http://blogs.msdn.com/lab_management/archive/2009/05/27/application-build-deploy-and-test-automation-in-lab-management.aspx"&gt;automate regular build, deployment and test cycles&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_38.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_38.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_18.png" width=620 height=469 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_18.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Also at any point you can access to an older build with a simple revert to the snapshot of that particular build. This is really helpful when you need a prior build for debugging a issue as unlike with physical machines where you may spend hours (to uninstall the current builds and then install new build and even then not sure if everything is fine as uninstall may have issues) now you can get to a prior build with just a button click “Revert to Snapshot”.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_40.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_40.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_19.png" width=620 height=469 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_19.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_42.png" mce_href="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_42.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_20.png" width=620 height=466 mce_src="http://blogs.msdn.com/blogfiles/lab_management/WindowsLiveWriter/CreationandWorkingwithVirtualEnvironment_AA41/image_thumb_20.png"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;In this post we have covered the basic Lab scenario, of creating and working with virtual environment. Stay tuned for the next post&amp;nbsp;about leveraging virtual environment for testing.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9683614" width="1" height="1"&gt;</content><author><name>vslmblg</name><uri>http://blogs.msdn.com/members/vslmblg.aspx</uri></author><category term="lab management" scheme="http://blogs.msdn.com/lab_management/archive/tags/lab+management/default.aspx" /><category term="snapshot" scheme="http://blogs.msdn.com/lab_management/archive/tags/snapshot/default.aspx" /><category term="ALM" scheme="http://blogs.msdn.com/lab_management/archive/tags/ALM/default.aspx" /><category term="Virtual Environment" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+Environment/default.aspx" /><category term="Virtual MachineTemplate" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+MachineTemplate/default.aspx" /><category term="Virtual Machine" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+Machine/default.aspx" /><category term="Virtual Test lab" scheme="http://blogs.msdn.com/lab_management/archive/tags/Virtual+Test+lab/default.aspx" /></entry></feed>