Archive for the ‘VS2013’ Category

h1

CodedUI mit TFS Teambuild

April 11, 2014

Es geht darum CodedUI Tests während eines TFS Teambuilds ohne Labmanagement auszuführen. Dazu gibt es eine ganze Reihe Informationen im Netz, trotzdem gibt es ein paar Fallstricke die es nicht einfacher machen. Gerade wenn man nach einer Lösung zum Fehler “Failed to initialize the unit test extension ‚urn:CodedUITest‘: A unit test extension is not registered for the following attribute: Microsoft.VisualStudio.TestTools.UITesting.CodedUITestAttribute” sucht, kommt man nicht so richtig zu einem eindeutigen Ergebnis.

Mit einer vorhandenen VS 2013 Solution mit CodedUI Tests (Class Library mit .Net Framework 4.5 konfiguriert) wurden folgende Konstellationen getestet:

  1. TFS 2012 Update 3/4, TFS Build Controller 2012, Visual Studio 2013.1 Premium, Build Agent als Interaktiver Prozess > Ergebnis: “Failed to initialize the unit test extension ‚urn:CodedUITest‘: A unit test extension is not registered for the following attribute: Microsoft.VisualStudio.TestTools.UITesting.CodedUITestAttribute.”
  2. TFS 2013, TFS Build Controller 2012, Visual Studio 2013.1 Premium/Ultimate Testmanager, Build Agent als Interaktiver Prozess > Ergebnis: “Failed to initialize the unit test extension ‚urn:CodedUITest‘: A unit test extension is not registered for the following attribute: Microsoft.VisualStudio.TestTools.UITesting.CodedUITestAttribute.”
  3. TFS 2013, TFS Build Controller 2013, VS 2013 Ultimate, Testmanager 2013,  Build Agent als Interaktiver Prozess > Ergebnis: Tests laufen
  4. TFS 2013, TFS Build Controller 2013, VS 2013 Premium, Build Agent als Interaktiver Prozess > Ergebnis: Tests laufen

Fazit: CodedUI Tests sollten immer mit der zur TFS-Version passenden Visual Studio Version entwickelt werden. Bei TFS 2012 also Visual Studio 2012 + TFS Build Controller 2012 + Build Agent 2012 mit VS 2012 Premium verwenden. Unsere zur Zeit passende Konstellation ist TFS 2013, TFS Build Controller 2013, Build Agent 2013 (interaktiver Prozess), VS 2013 Premium