Search code examples
visual-studio-2015coded-ui-teststfs-2015

Upgrade CodedUI tests to VS 2015


I have updated from VS 2013 to VS 2015, TFS 2013 to TFS 2015 and .NET 4.5.2 to .NET 4.6.1.

Now I have the problem that my coded UI tests are not running. Problem is that Microsoft does not support Test Agents and Test Controllers with TFS 2015. They recommend to use Agents for VS 2013 Update 5 when running coded UI tests with TFS 2015 (see e.g. here or here).

The error I get for each test is:

Unit Test Adapter threw exception: Could not load file or assembly 'Microsoft.VisualStudio.QualityTools.CodedUITestFramework, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified..

The version that is available on the test agent is 12.0.0.0 (provided by Agents for VS 2013 Update 5).

I have a build controller running VS 2015 which has the required assemblies during compiling. On my test agents these assemblies are not available because I cannot install Agents for VS 2015. Reason is that a side by side installation of Agents for VS 2013 and Agents for VS 2015 is not supported [I have tried this myself - it does not work].

Here it is recommended to extend the App.config. This approach did not work for me (whether with asm.v1 nor with asm.v2).

In my *.csproj files all references are listed with specific version = false.

I have also tried to copy the assemblies (copy local = true) and added them as deployment items but this is a never ending list of assemblies....

Any ideas how I can solve this problem?

Thank you


Solution

  • We recently performed a similar upgrade (from TFS 2010 for us) and we documented the changes we had to make to get it working. Regardless of the recommendation we used the TFS 2015 agents to run our CodedUI tests and it works fine. Your error indicates you do not have VS2015 installed on the build agent. I would suggest using the new TFS 2015 agents OR you could just install VS2015 on your 2013 agent.

    http://dotnetcatch.com/2015/10/01/tfs-2010-to-2015-upgrade-codedui-feature-test-builds/

    Other things to try:

    • Change your build process template to use the later version (we use the TfvcTemplate12.xaml)
    • Use assembly bindings to redirect old CodedUI assemblies to the new versions
    ...
    <dependentAssembly>
            <assemblyIdentity name="Microsoft.VisualStudio.QualityTools.WindowsStore.CodedUITestFramework">> publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
            <bindingRedirect oldVersion="10.0.0.0-14.0.0.0" newVersion="14.0.0.0" />
          </dependentAssembly>
    ...
    
    • Change your agents to run in interactive mode