2012-04-05 8 views
1

Ich mag geeignet ist einfach gui-Tests mit der ms ui Automation Framework machen, deshalb fange ich das Programm, das über ein Prozessobjekt getestet werden soll:überprüfen Sie, ob Anwendung für die ms ui Automation Framework

Process process = new Process(); 
process.StartInfo.FileName = path; 
process.Start(); 
AutomationElement mainform = AutomationElement.FromHandle(process.MainWindowHandle);  

Doch wie kann ich überprüfen, ob das gestartete Programm überhaupt zum Testen mit dem ui Automation Framework geeignet ist? Wenn ich zum Beispiel ein Java-Programm starte, wird das Hauptformular AutomationElement null sein?

Oder sind alle .exe-Anwendungen mit Automation Framework kompatibel?

Antwort

1

Microsofts "UIAutomation" ist ein Ersatz für MSAA "Microsoft Active Accessibility". Beide basieren auf Informationen zur Barrierefreiheit, um Steuerelemente zu finden und mit ihnen zu interagieren. Wie erfolgreich Sie die Anwendung automatisieren, hängt direkt davon ab, wie gut Barrierefreiheit in Ihrer Anwendung implementiert wurde. Abgesehen davon macht es UIAutomation ein wenig einfacher, mit UIs zu arbeiten, auch wenn sie nicht mit nur ein wenig zusätzlicher Arbeit perfekte Accessibility-Implementierungen haben. Benutzeroberflächen, die aus einer beliebigen Programmiersprache erstellt wurden, implementieren im Allgemeinen immer noch die in Windows enthaltenen UIAutomation-Schnittstellen, sodass sogar ein Java-Programm funktionieren sollte.

+0

Ich werde versuchen zu überprüfen, ob die gestartete Anwendung in einem Framework geschrieben wurde, das die MSAA/UIAutomation unterstützt – dontcare

Verwandte Themen