I can't connect to my load test repository.

Problem: When I try to Open and Manage Results from my load test I get an error: Solution: Make sure your controller is configured with the full name to the database server instead of . or .\sqlexpress.  Change to mySqlServer or mySqlServer\sqlExpress.

My web test data source is not loading all the columns from my csv file.

Problem: I have a data driven web test that calls other web test. The called web tests are also data bound to data loaded by the parent data source.  When I run my test I was getting the following error: Request failed: Context parameter 'FluidManagement.FluidManagement_json#csv.spacer2' not found in test context Solution: Expand the Data Sources node of your web test until you can select the desired table.  From the Properties window change the Select Columns from “Only select bound columns” to “Select all columns”. Explanation: The default behavior is to only select the columns that are bound the web test that defines the data source.  This is a reasonable assumption as long as the test does not call any other data bound web test.  If the test you call rely on columns that are not bound in the caller you must change the Select Columns setting.

How do I reset my Visual Studio Settings

Problem: I selected the wrong language when I started Visual Studio for the first time. Solution: From the Tools menu select Import and Export Settings.... From the Import and Export Settings Wizard select Reset all settings.  Complete the wizard to reset your settings.

I only see the last 10 steps of my Exploratory Testing in MTM when I create a test case.

Problem: I used the "Do Exploratory Testing" freature of Microsoft Test Manager (MTM) but only the last 10 steps show up when I create a test case. Solution: In the new test case window press the "Change steps" button above the test steps.  This will bring up a dialog box allowing you to select additional steps.   Explanation: The default number of steps to include in a test case is 10. That value is in the mtm.exe.config file: <!-- The number of actions selected by default when a bug or test case is created         while exploring the app or providing feedback. The number of actions displayed by default are         four times this number -->    <add key="DefaultNumberOfActions" value="10"/>  

I can't create a new backup plan in TFS 2012 after a hardware migration.

Problem I upgraded my TFS from 2010 to 2012 and moved to new hardware after my 2010 machine crashed. When I attempt to setup a new backup plan using the 2012 Power Tools I get the following error: A backup plan already exists for this TFS system on a different machine Solution Connect to SSMS and create a new query using Tfs_Configuration and execute the following command. EXEC sp_dropextendedproperty @name = 'TFS_BACKUP_PLAN_CONTROLLER' Explanation The database has an extended property that it stores the name of the machine used for the backups. This was set while running on the original hardware. You have to remove this value before the power tool will allow you to configure a new backup.

I can't view my localized values of my MVC application

Problem: I have changed the language of my browser but I am still only getting me default resources. Solution: Add the following line to your web.config as a child of the system.web element. <globalization enableClientBasedCulture="true" uiCulture="auto" culture="auto"/> Explanation: While working on an ASP.NET MVC application I wanted to test my localized resource files.  From the options of my browser I updated the language.  However, when I viewed the page I continued to see the default values.  Not until I added the globalization element to me web.config did my browser load the correct resources.

All my workspaces are missing!

Normal 0 false false false EN-US X-NONE X-NONE /* 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-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin-top:0in; mso-para-margin-right:0in; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0in; line-height:115%; 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-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} Problem: After a TFS server move all my workspaces are missing. Solution: Use the TF.exe Workspace command with the /newowner option. Explanation: During a recent TFS upgrade and migration from TFS 2010 running in workgroup mode to TFS 2012 on a new server I lost all my workspaces.  From the new TFS server I could run the TF.exe workspaces command and see all the existing workspaces.  However, if I were to open Visual Studio on any of the client machines none of those workspaces would show up. When TFS is in workgroup mode user accounts are all local accounts.  On the TFS server there was for example a Donovan L Brown account.  The name would be in the format of ComputerName\UserName.  After I moved to new hardware the computer name was different.  However, all the workspaces were owned by the accounts with the old computer name.  You can confirm that by running the TF.exe workspaces command and looking at the owner column. My goal is to simply update the owner of the workspace to point at the new local Donovan L Brown account on the new computer.  tf workspace [/collection:TeamProjectCollectionUrl] [workspacename[;workspaceowner]] [/newowner:ownername] If you have pending changes in the workspaces you will have to shelve them first.  This can be a bit of a challenge as well because you are not the owner of the workspace yet.  To work around this just use the TF.exe workspace command to change the workspace to public.  After which you can shelve the changes using your new account.  Once the changes are shelved you can change the workspace owner to the new account. Finally you can unshelve your changes and return to work.

More fun with CUIT

Problem: I have a CUIT that does not run as fast as I would like. Solution: Use the Coded UI Test Editor in Feature Pack 2 to adjust the actions recorded. Explanation:

ReSharper Code Cleanup does not fix “Convert to Lambda Expression” issues.

Problem: ReSharper Code Cleanup does not fix “Convert to Lambda Expression” issues. Solution: Use regular expression find and replace to correct. Explanation: I am a recent ReSharper convert so my code does not match the format suggested by ReSharper.  The Code Cleanup feature of ReSharper can really help to get your code in line. However, there does not appear to be an option to have it convert code to Lambda Expressions for you. Because I had so many lines of code to fix I decided to use the Regular Expression option of the Find and Replace dialog to fix all my lines at once.  The goal of a regular expression is to allow you to describe patterns of interest. Below is an example of a line of code that would cause ReSharper to suggest changing to a Lambda Expression. dest.DeviceGet = () => { return diverter; };   After being converted to an expression the results would appear like this: dest.DeviceGet = () => diverter; As you can see the curly braces, semicolon and return statement were removed. If you review the lines you will realize there is a pattern we can use to locate the lines that need to be corrected. We are looking for a line that contains a curly brace ‘{‘ followed by a space ‘ ‘ and the word ‘return’ and another space ‘ ‘. Now we want to copy everything up to the ‘;’. This portion of the line will remain after it is converted. Finally we want to select the ‘;’, space ‘ ‘ and closing curly brace ‘}’;  The regular expression to select this line is below: \{ return {[^;]+}; \} The regular expression begins be locating the starting curly brace \{. I must precede the curly brace with a backslash because it is a reserved character. Next is the space followed by the word ‘return’ and another space. Next we have to identify the portion of the string we need to copy. We do this by using a pair of curly braces {} to tag that portion of the string. Any pattern matched within those braces will be tagged so we can use it in the replace textbox of the Find and Replace dialog. The next portion of our regular expression needs to match all characters up to but not including the first semicolon ‘;’.  We achieve this by adding “[^;]+” to our regular expression.  The square brackets define a character class.  A character class matches any character within the brackets.  However, if the first character is a circumflex ‘^’ it changes the meaning to match any character except the ones within the brackets.  Adding the + matches one or more occurrences of the preceding regular expression.  Because we places our character class within curly braces the matched string will be tagged for later use. Finally we match the actual ‘;’, space and closing curly brace with “; \}”. The completed regular expression defines what we want to find and tags the portion we need to retain. Each pair of curly braces is given a number staring from 1. To use the first tagged portion in the Find and Replace dialog we simply type \1.  Below is a screen shot of the Find an Replace dialog ready to correct all your “Convert to Lambda Expression” warnings.  Note: you must check the “Use Regular expressions” check box.