2011-01-06 5 views
1

Ich bin gerade in das Testen einer GUI-lastigen App in C++ (MFC) und C# (WinForms, WPF) geschrieben springen. Ich habe kurz mit codierten ui Tests gespielt, und ich bin glücklich mit dem, was ich sehe. Das Problem ist, dass mein Programm ist nicht trivial, so dass dies aus 2 Gründen für mich nicht funktioniert:Ansatz zum Testen von GUI mit MS TEST/codierte UI in VS2010

VS 2010 Coded UI Test - Launch Referenced Application

  • Es gibt 3 Programme in bestimmten Reihenfolge zu starten, und ich muß für die Anmeldung bei einer von ihnen. Timing ist wichtig; Ich muss sicherstellen, dass sie hochkommen.
  • Die Startzeit ist lang, deshalb möchte ich sicherstellen, dass diese Einrichtung nur einmal pro Projekt durchgeführt wird.
  • Wenn das Projekt fertig ist, möchte ich dieses Ding sauber zerstören.
  • Für jeden Test möchte ich sicherstellen, dass das Fenster aktiv ist und zu Beginn jedes Tests im Vordergrund steht.

Was sind einige gute Ansätze? Wenn Sie feststellen, dass diese Frage zu vage ist, lassen Sie mich bitte wissen, was fehlt.

Antwort

1

Es gibt Code, der für die codierten UI-Tests generiert wird. Sie können den Test der codierten UI bearbeiten und Ihren eigenen Code hinzufügen, um darauf zu warten, dass Dinge auftreten, bevor der nächste aufgezeichnete Schritt ausgeführt wird. Wenn Sie eine bestimmte Anwendung in den Vordergrund bringen möchten, können Sie Process.GetProcessesByName verwenden, um Prozessinformationen über Ihre laufenden Anwendungen zu erhalten, und den Hauptfenstergriff aufrufen, um ihn in den Vordergrund zu bringen.

1

Wenn Sie Ihren Test verzögern und einige Aufgaben (z. B. Anmeldung oder Serverantwort) warten möchten, können Sie diesen Artikel lesen. http://msdn.microsoft.com/en-us/library/gg316453.aspx

+0

Danke, dies ist eine einfache Technik und möglicherweise nicht stark genug. Ich würde gerne wissen, wie ich auf ein bestimmtes Fenster mit einem bestimmten Titel warten kann und dann vielleicht auf einen anderen tippe. –