Wie zu tun-UI-Automatisierung von Metro-Style-Apps?
Habe ich heruntergeladen und installiert die windows 8 consumer preview, und ich würde gerne herausfinden, wie zu verwenden der UI-Automatisierung-API, um Daten von metro-style-Anwendungen.
Hintergrund: ich habe eine Menge von automatisierten tests, welche die Microsoft UI Automation API ' s, um mit Anwendungen zu interagieren. Die Drehbücher sind geschrieben in IronRuby gegen .NET 4
Zunächst, ich würde einfach prüfen möchten, ob das start-Menü sichtbar ist (und wenn ja, schließen Sie es)
Laut Microsoft, die normale UI Automation API ' s sollten in der Lage sein, um Zugriff und Kontrolle metro-style-Anwendungen, aber das problem ist, ich kann nicht herausfinden, wie mein code tatsächlich Zugriff auf die Benutzeroberfläche der metro-Anwendungen? Unsere normalen Weg der Betrachtung der UI-Automatisierung-Daten über UISpy, aber wenn ich UI Spion unter windows 8 und bringt eine metro-app, es gibt keine Erwähnung von ihm... es scheint, wie metro-apps (einschließlich der start-Bildschirm) sind abgeschottet von der desktop.
Wenn ich nicht finden können, die metro-apps in UISpy, wie kann ich herausfinden, was Ihren Automatisierung-ID ' s sind, und wie könnte ich Sie aus meinem automatisierte test-Skripte?
- Für die Klärung - Sie sind mit dem XAML-stack oder HTML5? Ich weiß es nicht sicher, weil ich nicht versucht haben, zu tun-UI-Automatisierung in beiden, aber ich denke, es könnte ein bisschen anders, je nach Ihrer Wahl.
- msdn.microsoft.com/en-us/library/windows/apps/...
- Ich bin nicht schriftlich metro-apps doch zu diesem Zeitpunkt möchte ich nur zum anzeigen der start-Bildschirm (und möglicherweise auch einige der eingebauten metro-apps wie E-mail), die ich denke, sind Xaml/C++ ??
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenige Ressourcen für UI automation, welche in Metro-style-apps:
Dies ist ein forum thread auf das Thema.
Gibt es nichts über die app, die hält traditionellen UI-automation funktioniert. Sie müssen möglicherweise aktualisiert werden Werkzeuge für die Anzeige von Metro-style-apps. Einige Schiff mit der Consumer Preview. Suchen inspect.exe.
UI-Automation-tools automatisieren können Metro-Anwendungen. Überprüfen Sie RIATest zum Beispiel.
Angabe von version 6.0 eine Reihe von Funktionen in RIATest sind speziell für Metro-style-Anwendung, die Automatisierung, insbesondere:
Fähigkeit, bleiben Sie an der Spitze der Metro-Benutzeroberfläche zu ermöglichen, Sie gleichzeitig zu sehen Ihre U-Bahn-Anwendung und RIATest IDE und minimieren die Umstellung von Desktop zu Metro-Bildschirme bei der Automatisierung einer Metro-Anwendung.
Aufzeichnung von Aktionen durchgeführt, die auf native Windows-GUI-Elemente (einschließlich Metro GUI). Der recorder Analysen Ihr Skript-code und verwendet Ihre Variablen-Namen zu erzeugen cleaner aufgezeichneten Skripte, ähnlich zu, wie Sie hand-coding-Automatisierung-Skript.
Nahtlose workaround für Fehler wie diese im Windows-UI-Automatisierung Umsetzung in der Metro UI.
Disclaimer: ich arbeite für Cogitek, die RIATest Unternehmen.
WinRT (aka "Metro-Stil" - Anwendungen laufen in einer sandbox. Sie können nicht durchbohren die Wände zwischen Anwendungen, einschließlich Desktop-Anwendungen. Dies beinhaltet auch Netzwerk-isolation (Sie können nicht zurück zu verweisen localhost beispielsweise außer in einer Entwicklungsumgebung). Es gibt ein paar Ausnahmen wie die Freigabe und Suche Kontakte, die es ermöglichen, sehr spezifische Arten der Interaktion zwischen den apps.
Es ist diese sandbox, die verhindern, dass UISpy sehen Sie die Ausführung von WinRT-Anwendung im hintergrund. Ich bin mir nicht sicher, wie Sie Sie UISpy könnte dieses Problem umgehen, ohne irgendeine Art von Entwicklungsumgebung Ausnahme von der sandbox (ähnlich der Netzwerk-Isolierung Ausnahme) nicht zur Verfügung stehen, die in der consumer preview.
Ich bin mir auch nicht bewusst irgendwelche Ankündigungen Wann/ob der UI-Automatisierung-API unterstützt für WinRT-Anwendungen in dieser Zeit.