- Überblick
- UI-Automatisierung (UI Automation)
- Über das UIAutomation-Aktivitätspaket
- Mit UI-Automatisierung automatisierte Anwendungen und Technologien
- Projektkompatibilität
- UI-ANA-016 – URL zum Öffnen eines Browsers abrufen
- UI-ANA-017 – ContinueOnError True
- UI-ANA-018 – OCR-/Bildaktivitäten auflisten
- UI-DBP-006 – Containernutzung
- UI-DBP-013 – Falscher Gebrauch von Excel-Automatisierung
- UI-DBP-030 – Verwendung unzulässiger Variablen in Selektoren
- UI-DBP-031 – Aktivitätsverifizierung
- UI-PRR-001 – Klick simulieren
- UI-PRR-002 – Typ simulieren
- UI-PRR-003 – Offener Anwendungsmissbrauch
- UI-PRR-004 – Hartcodierte Verzögerungen
- UI-REL-001 – Große IDX in Selektoren
- UI-SEC-004 – Selektor-E-Mail-Daten
- UI-SEC-010 – App-/URL-Einschränkungen
- UI-USG-011 – Nicht zulässige Attribute
- UX-SEC-010 – App-/URL-Einschränkungen
- UX-DBP-029 – Unsichere Kennwortnutzung
- UI-PST-001 – Prüfungsprotokollebene in Projekteinstellungen
- UiPath-Browsermigrationstool
- Clippingbereich
- Computer Vision Recorder
- Aktivitätenindex
- Aktivieren (Activate)
- Ankerbasis (Anchor Base)
- Browser anhängen (Attach Browser)
- Fenster anhängen (Attach Window)
- Benutzeingabe blockieren (Block User Input)
- Textfeld (Callout)
- Prüfen (Check)
- Klicken (Click)
- Bild anklicken (Click Image)
- Bild-Trigger anklicken (Click Image Trigger)
- OCR-Text anklicken (Click OCR Text)
- Text anklicken (Click Text)
- Trigger anklicken (Click Trigger)
- Anwendung schließen (Close Application)
- Registerkarte schließen (Close Tab)
- Fenster schließen (Close Window)
- Kontextbewusster Anker
- Ausgewählten Text kopieren (Copy Selected Text)
- Element Attribute Change Trigger
- Element vorhanden (Element Exists)
- Elementumfang (Element Scope)
- Element State Change Trigger
- Export UI Tree
- Strukturierte Daten extrahieren (Extract Structured Data)
- Untergeordnete Elemente finden (Find Children)
- Element finden (Find Element)
- Bild finden (Find Image)
- Bildübereinstimmung finden (Find Image Matches)
- OCR-Textposition finden (Find OCR Text Position)
- Relatives Element finden (Find Relative Element)
- Textposition finden (Find Text Position)
- Aktives Fenster abrufen (Get Active Window)
- Vorgänger-Element erhalten (Get Ancestor)
- Attribut erhalten (Get Attribute)
- Ereignisinfo erhalten (Get Event Info)
- Aus Zwischenablage erhalten (Get From Clipboard)
- Volltext erhalten (Get Full Text)
- OCR-Text erhalten (Get OCR Text)
- Passwort erhalten (Get Password)
- Position erhalten (Get Position)
- Quellelement erhalten (Get Source Element)
- Text erhalten (Get Text)
- Sichtbaren Text erhalten (Get Visible Text)
- Zurück (Go Back)
- Weiter (Go Forward)
- Zur Startseite (Go Home)
- Google Cloud Vision OCR
- Fenster ausblenden (Hide Window)
- Markieren (Highlight)
- Hotkey-Trigger (Hotkey Trigger)
- Darauf zeigen (Hover)
- Auf Bild zeigen (Hover Image)
- Auf OCR-Text zeigen (Hover OCR Text)
- Text beim Darauf zeigen (Hover Text)
- Bild vorhanden (Image Exists)
- Auf Bildschirm anzeigen (Indicate On Screen)
- .NET-Code einfügen
- Inject Js Script
- ActiveX-Methode aufrufen
- Tastendruck-Trigger (Key Press Trigger)
- Bild laden (Load Image)
- Fenster maximieren (Maximize Window)
- Microsoft Azure ComputerVision OCR
- Microsoft OCR
- Microsoft Project Oxford Online OCR
- Fenster minimieren (Minimize Window)
- Ereignisse überwachen (Monitor Events)
- Maus-Trigger (Mouse Trigger)
- Fenster verschieben (Move Window)
- Navigieren zu (Navigate To)
- OCR-Text vorhanden (OCR Text Exists)
- Auf Element erscheinen (On Element Appear)
- Auf Element verschwinden (On Element Vanish)
- Auf Bild erscheinen (On Image Appear)
- Auf Bild verschwinden (On Image Vanish)
- Anwendung öffnen (Open Application)
- Browser öffnen (Open Browser)
- Browser aktualisieren (Refresh Browser)
- Benutzerereignis wiedergeben (Replay User Event)
- Fenster wiederherstellen (Restore Window)
- Bild speichern (Save Image)
- Objekt auswählen (Select Item)
- Mehrere Objekte auswählen (Select Multiple Items)
- Hotkey senden (Send Hotkey)
- Ausschneidebereich einstellen (Set Clipping Region)
- Fokus legen auf (Set Focus)
- Text einstellen (Set Text)
- Auf Zwischenablage setzen (Set To Clipboard)
- Web-Attribut setzen (Set Web Attribute)
- Fenster anzeigen (Show Window)
- Prozess starten (Start Process)
- System-Trigger (System Trigger)
- Screenshot anfertigen (Take Screenshot)
- Tesseract OCR
- Text vorhanden (Text Exists)
- Tooltip
- Eingeben in (Type Into)
- Sicheren Text eingeben (Type Secure Text)
- Vordergrund verwenden
- Attribut abwarten (Wait Attribute)
- Warten, bis Element verschwindet (Wait Element Vanish)
- Warten, bis Bild verschwindet (Wait Image Vanish)
- Prüfung der Barrierefreiheit
- Application event trigger
- Benutzeingabe blockieren (Block User Input)
- Anleitung
- Check/Uncheck
- Check App State
- Check Element
- Klicken (Click)
- Click Event Trigger
- Ziehen und Ablegen
- Elementumfang (Element Scope)
- Extract Table Data
- Find Elements
- For Each UI Element
- Get Browser Data
- Clipboard abrufen
- Text erhalten (Get Text)
- Get URL
- Zu URL wechseln
- Markieren (Highlight)
- Darauf zeigen (Hover)
- Inject Js Script
- Tastenkombinationen
- Keypress Event Trigger
- Mouse Scroll
- Navigate Browser
- Bild speichern (Save Image)
- Objekt auswählen (Select Item)
- Set Browser Data
- Clipboard festlegen
- Legen Sie den CV-Server fest
- Set Runtime Browser
- Fokus legen auf (Set Focus)
- Projekteinstellung festlegen
- Text einstellen (Set Text)
- Screenshot anfertigen (Take Screenshot)
- Eingeben in (Type Into)
- Unblock User Input
- Window operation
- Anhängen
- Prüfen (Check)
- Klicken (Click)
- Ziehen und Ablegen
- Daten extrahieren
- Attribut erhalten (Get Attribute)
- GetChildren
- GetRuntimeTarget
- GetText
- Get URL
- GoToUrl
- Markieren (Highlight)
- Darauf zeigen (Hover)
- IsEnabled
- Tastaturkürzel (Keyboard Shortcut)
- Mouse Scroll
- Offen
- Objekt auswählen (Select Item)
- Screenshot anfertigen (Take Screenshot)
- Eingeben in (Type Into)
- Wartestatus
- Führen Sie eine Browsersuche durch und rufen Sie Ergebnisse mithilfe von UIAutomation-APIs ab
- Web-Browsing
- Finden von Bildern
- Klicken auf Bilder
- Auslösen und Überwachen von Ereignissen
- Erstellen und Überschreiben von Dateien
- HTML-Seiten: Extrahieren und Bearbeiten von Informationen
- Bearbeiten von Fenstern
- Automatisierte Listenauswahl
- Finden und Bearbeiten von Fensterelementen
- Verwalten der Textautomatisierung
- Laden und Verarbeiten von Bildern
- Verwalten von mausaktivierten Aktionen
- Automatisieren der Anwendungslaufzeit
- Automatisierte Ausführung einer lokalen Anwendung
- Browsernavigation
- Web-Automatisierung
- Beispiel für Trigger Scope
- Aktivieren der Unterstützung für die UI-Automatisierung in DevExpress
- Computer Vision Local Server
- Mobile Automation
- Versionshinweise
- Über die Architektur der Automatisierung von Mobilgeräten
- Projektkompatibilität
- Get Log Types
- Get Logs
- Get Page Source
- Get Device Orientation
- Get Session Identifier
- Install App
- Manage Current App
- Manage Other App
- DeepLink öffnen
- Open URL
- Mobile Device Connection
- Richtungswechsel
- Muster zeichnen
- Positional Swipe
- Press Hardware Button
- Set Device Orientation
- Screenshot anfertigen (Take Screenshot)
- Take Screenshot Part
- Element vorhanden (Element Exists)
- Execute Command
- Attribut erhalten (Get Attribute)
- Get Selected Item
- Text erhalten (Get Text)
- Set Selected Item
- Text einstellen (Set Text)
- Wischen
- Tap
- Type Text
- Terminal
- Versionshinweise
- Über das Terminal-Aktivitätspaket
- Projektkompatibilität
- Best Practices
- Find Text
- Get Color At Position
- Get Cursor Position
- Feld erhalten (Get Field)
- Feld an Position erhalten (Get Field at Position)
- Bildschirmbereich erhalten (Get Screen Area)
- Text erhalten (Get Text)
- Text an Position erhalten (Get Text at Position)
- Cursor bewegen (Move Cursor)
- Move Cursor to Text
- Strg-Taste senden (Send Control Key)
- Tasten senden (Send Keys)
- Sichere Tasten senden (Send Keys Secure)
- Feld setzen (Set Field)
- Feld an Position setzen (Set Field at Position)
- Terminalsitzung (Terminal Session)
- Warte auf Feldtext (Wait Field Text)
- Wait Screen Ready
- Warte auf Bildschirmtext (Wait Screen Text)
- Warte auf Text an Position (Wait Text at Position)
- Terminalcodierte Automatisierungs-APIs
Anleitung
Verwenden von „Browser Dialog Scope“ zur Verarbeitung von JavaScript-Warnungs-, Bestätigungs- und Eingabeaufforderungsdialogfeldern während der Browserautomatisierung.
Bei der Automatisierung von Geschäftsprozessen treten bei Benutzern Fälle auf, in denen Browserdialogfelder die Ausführung der aktuellen Browserseite blockieren. In der Regel möchte der Benutzer das Browserdialogfeld verwerfen und auch die Dialogfeldmeldung zur späteren Verwendung im Geschäftsszenario abrufen.
Bei Windows-Projekten kann dieses Szenario bewältigt werden, indem der Anhangsmodus für Fenster zur Anwendungsinstanz für die Containeraktivität Use Application/Browser festgelegt und der Browser-Dialogselektor mit Active Accessibility (AA)-UI-Framework generiert wird.
Aber für plattformübergreifende Projekte ( einschließlich Studio Web) hatten wir keine Lösung für diese Art von Szenario.
JavaScript verfügt über drei Arten von Popup-Feldern: Warnung, Bestätigen und Eingabeaufforderung. Die Aktivität Browser Dialog Scope kann diese Art von Dialogfeldern verarbeiten und sollte als Scope für die Aktivitäten verwendet werden, die ein Browserdialogfeld generieren können.
Die Aktivität Browser Dialog Scope muss innerhalb einer Use Application/Browser- Aktivität hinzugefügt werden und die Aktivitäten, die das Dialogfeld auslösen könnten, müssen im Textkörper der Aktivität Browser Dialog Scope platziert werden.
Konfiguration für Warnung
Ein Warnungsdialogfeld wird verwendet, um sicherzustellen, dass Informationen zum Benutzer durchkommen. Wenn sie erscheint, muss der Benutzer auf die Schaltfläche OK klicken, um fortzufahren, andernfalls wird die Ausführung blockiert.
So kann die Aktivität Browser Dialog Scope so konfiguriert werden, dass ein Warnungsdialogfeld verarbeitet wird, der ausgelöst wird, wenn Sie auf eine Schaltfläche zum Senden klicken.
Konfiguration für Bestätigen
Ein Bestätigungsdialogfeld wird verwendet, wenn der Benutzer etwas überprüfen oder akzeptieren muss. Wenn sie erscheint, muss der Benutzer entweder auf die Schaltfläche OK oder Abbrechen klicken, um fortzufahren.
So kann die Aktivität Browser Dialog Scope so konfiguriert werden, dass ein Bestätigungsdialogfeld verarbeitet wird, das ausgelöst wird, wenn Sie auf eine Schaltfläche zum Senden klicken.
Konfiguration für Eingabeaufforderung
Ein Eingabeaufforderungsdialogfeld wird verwendet, wenn der Benutzer eine Texteingabe für einen Vorgang vornehmen muss. Wenn er eingeblendet wird, muss der Benutzer nach der Eingabe eines Eingabewerts entweder auf OK oder Abbrechen klicken, um fortzufahren.
Beispiel für mehrere Dialogfelder
Es gibt seltene Situationen, in denen eine Seite mehrere Dialogfelder nacheinander öffnet, wenn der Benutzer auf eine Schaltfläche klickt. Betrachten wir das folgende Szenario:
- Wenn auf die Schaltfläche Daten übermitteln geklickt wird, wird ein Eingabeaufforderungs- Dialogfeld geöffnet, damit der Benutzer seinen/ihren Namen eingeben kann.
- Nach dem Schließen des Eingabeaufforderungsdialogfelds mit der Schaltfläche OK wird nach Abschluss des Übermittlungsvorgangs ein Dialogfeld zur Warnung angezeigt.
Die Aktivität Browser Dialog Scope kann verwendet werden, um diese Situation zu bewältigen, indem mehrere Dialogscopes verschachtelt werden . Sie müssen in der gleichen Reihenfolge wie die Dialogfelder, die sie behandeln, auf der Seite angezeigt werden. Der Workflow wird fortgesetzt, sobald alle Dialogfelder bearbeitet wurden. Für das obige Szenario:
- Erstellen Sie zunächst einen Browser Dialog Scope, um das erste Dialogfeld zu bearbeiten, in diesem Fall ein Prompt -Dialogfeld.
- Erstellen Sie im ersten Scope einen zweiten Browser Dialog Scope , um das zweite Dialogfeld zu bearbeiten, in diesem Fall ein Warnungsdialogfeld .
- Platzieren Sie im zweiten Scope die Aktivität, die die Dialogfelder auslöst, in diesem Fall einen Klick auf die Schaltfläche Daten übermitteln .
App-Kartenoptionen für den Umgang mit Dialogfeld
Neben der Aktivität Browser Dialog Scope haben wir der Aktivität Use Application/Browser Optionen zur Behandlung von Browserdialogfeldern hinzugefügt.
Mit den neuen Einstellungen zur Dialogfeldbehandlung in der App-Karte kann der Benutzer beschreiben, wie Browserdialogfelder automatisch geschlossen werden sollen (welche Dialogtypen verworfen werden sollen und welche Antwort zur Bestätigung und Eingabeaufforderung für Dialoge gegeben werden soll).
- Warnungen verwerfen
- „Bestätigen“ verwerfen + Dialogfeldantwort „Bestätigen“ verwerfen
- Eingabeaufforderungen verwerfen + Text der Eingabeaufforderung + Eingabeaufforderung im Dialogfenster
Projekteinstellungen für App-Karte im Dialogfeld
Ähnliche Projekteinstellungen wurden für die Dialogfeldbehandlung hinzugefügt, die als Standardeinstellungen für die Optionen Anwendung/Browser-Dialogbehandlung verwenden.
- Windows- Projekte: UI-Automatisierung modern > Anwendung/Browser
- Plattformübergreifende Projekte: UI-Automatisierung > Anwendung/Browser
Scope des Browserdialogs und Priorität der Behandlung des App-Kartendialogs
Wenn mehrere Scope-Aktivitäten des Browserdialogfelds und App-Karten mit Dialogfeldbehandlung verschachtelt sind, ist es wichtig, einige Dinge zu beachten, um zu bestimmen, wie Dialogfelder behandelt werden:
- Scope-Aktivitäten des Browserdialogfelds haben Vorrang vor den Optionen zur Behandlung von App-Kartendialogfeldern.
- Verschachtelte Browser-Dialog-Scope -Aktivitäten verarbeiten mehrere Dialogfelder in der Reihenfolge, in der sie angezeigt werden: Der erste Dialogfeld-Scope behandelt das erste Dialogfeld, der zweite Dialogfeld-Scope behandelt das zweite Dialogfeld und so weiter.
- Verschachtelte App-Karten mit Dialogfeldbehandlung überschreiben sich gegenseitig: Die innere App-Karte überschreibt die Einstellungen der äußeren App-Karte. Beispielsweise kann eine App-Karte der obersten Ebene so konfiguriert werden, dass alle Dialogfelder mit Abbrechen im gesamten Workflow verworfen werden, aber für einen kleinen Teil des Workflows kann eine kurzzeitige App-Karte innerhalb der obersten Ebene verwendet werden, um Dialogfelder mit OK bestätigen zu akzeptieren , wodurch die Dialogfeldbehandlung nur für diesen Teil des Workflows geändert wird. Warnungen und Aufforderungen werden weiterhin gemäß der App-Karte der obersten Ebene verworfen.
Wenn ein Browserdialogfeld angezeigt wird und mehrere Browserdialogfelder und App-Karten mit Dialogfeldbehandlung vorhanden sind, die das Dialogfeld verarbeiten können, wird der Browserdialogfeld oder die App-Karte, die das Dialogfeld bearbeitet, folgendermaßen ausgewählt:
- Die erste ( außen) -Aktivität des Browserdialogfelds , die: einen übereinstimmenden Dialogtyp hat und noch kein Dialogfenster erfasst hat.
- Wenn kein Browser Dialog Scope gefunden wird, wird die letzte (innerhalb) App-Karte verwendet, die für die Verarbeitung des Dialogtyps konfiguriert ist.
- Wenn kein brauchbarer Scope des Browserdialogfelds oder keine App-Karte gefunden wird, wird das Dialogfeld nicht behandelt und dem Benutzer angezeigt.
- Konfiguration für Warnung
- Konfiguration für Bestätigen
- Konfiguration für Eingabeaufforderung
- Beispiel für mehrere Dialogfelder
- App-Kartenoptionen für den Umgang mit Dialogfeld
- Projekteinstellungen für App-Karte im Dialogfeld
- Scope des Browserdialogs und Priorität der Behandlung des App-Kartendialogs