2014-07-23 10 views
8

Ich starte MSTest, um WPF-Anwendung (Coded UI Test) auf einer VM mit Teamcity zu testen. Ich habe bereits Testmittel als interaktiver Prozess installiert, aber ich erhalte diesen Fehler in Teamcity LogCodierter UI-Test mit Teamcity

Error calling Initialization method for test class Squarebit.Apms.Terminal.Wpf.Test.CodedUITest1: Microsoft.VisualStudio.TestTools.UITest.Extension.UITestException: To run tests that interact with the desktop, you must set up the test agent to run as an interactive process. For more information, see "How to: Set Up Your Test Agent to Run Tests That Interact with the Desktop" (http://go.microsoft.com/fwlink/?LinkId=255012) 
If you are running the tests as part of your team build, you must also set up the build agent to run as an interactive process. For more information, see "How to: Configure and Run Scheduled Tests After Building Your Application" (http://go.microsoft.com/fwlink/?LinkId=254735) 
    at Microsoft.VisualStudio.TestTools.UITesting.Playback.Initialize() 
    at Microsoft.VisualStudio.TestTools.UITesting.CodedUITestExtensionExecution.BeforeTestInitialize(Object sender, BeforeTestInitializeEventArgs e) 
    at Microsoft.VisualStudio.TestTools.TestTypes.Unit.UnitTestExecution.RaiseBeforeTestInitialize(BeforeTestInitializeEventArgs args) 
    at Microsoft.VisualStudio.TestTools.TestTypes.Unit.UnitTestExecuter.RunInitializeMethod() 

Können Sie mir helfen, dieses Problem zu beheben oder einige Möglichkeiten empfehlen Coded UI-Test unter Verwendung von Teamcity zu laufen?

+3

CUIT-Tests können nicht von einem Dienstkonto ausgeführt werden, da sie Zugriff auf das Desktop Windowing API-Set benötigen. Weitere Informationen zum Einrichten von teamcity agent als Nicht-Service-Konto finden Sie unter http://jake.ginnivan.net/teamcity-ui-test-agent im Abschnitt "Teamcity-Build-Agent installieren". –

+0

Dank Arun, es funktioniert – Gintama

+0

@ArunM - Sie sollten Ihren Kommentar als Antwort kopieren, damit Gintama es als die richtige Antwort markieren kann. –

Antwort

7

Codierte UI-Tests (CUIT) können nicht von einem Dienstkonto ausgeführt werden, da sie Zugriff auf das Desktop Windowing API-Set benötigen.

Bitte beachten Sie Installing the teamcity build agent Abschnitt in http://jake.ginnivan.net/teamcity-ui-test-agent/, um Teamcity Agent als Nicht-Service-Konto einzurichten.

+0

Ich versuche etwas Ähnliches zu tun, bevor ich auf TC gehe. Ich möchte, dass es mit einem einfachen Batch-Skript funktioniert, das remote ausgeführt wird. Läuft lokal gut, CUIT, alle gehen wie erwartet. Sie schlagen fehl, wenn ich versuche, sie aus der Ferne auszuführen. Ich habe die interaktive Prozess-Sache noch nicht untersucht. – IbrarMumtaz