WinDriver

Z Wiki
Verze z 4. 3. 2025, 12:12, kterou vytvořil SamiecK (diskuse | příspěvky) (Tato verze je označená pro překlad)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Přejít na: navigace, hledání
Jiné jazyky:
English • ‎čeština

Popis

Alias: WND

Spustí příkaz přes zprávy Windows API.

Odešlě příkaz určený parametrem Command přes zprávy Windows API. WinDriver je tedy použitelný pouze pro interakci s nativní Win32 aplikací a i v tomto případě je funkčnost závislá na její implementaci a použitých knihovnách. Výsledek závisí na vlastní reakci aplikace na zaslané zprávy (Windows Messages).

Vstupní parametry

Command

Typ String

Příkaz pro Windows API.

  • cbGetCount (zjistí počet položek v nabídce comboboxu)
    • Target=Parametry identifikující combobox
    • Output=Počet položek
  • cbGetCurrent (vrátí index právě zvolené položky)
    • Target=Parametry identifikující combobox
    • Output=Index zvolené položky
  • cbGetText (vrátí text položky)
    • Target=Parametry identifikující combobox
    • Value=Index požadované položky (0 odpovídá první položce)
    • Output=Text položky
  • cbSetCurrent (nastaví index aktuální položky)
    • Target=Parametry identifikující combobox
    • Value=Index požadované položky (0 odpovídá první položce, -1 ruší výběr)
  • click (vyvolá kliknutí)
    • Target=Parametry identifikující komponentu (typicky typu Button)
  • clickAsync (vyvolá kliknutí, nečeká na zpracování)
    • Target=Parametry identifikující komponentu (typicky typu Button)
  • command (vykoná příkaz)
    • Target=Parametry identifikující okno
    • Value=Id příkazu
  • getChecked (zjistí stav checkboxu/radiobuttonu)
    • Target=Parametry identifikující komponentu (typicky typu Checkbox nebo Radiobutton)
    • Output=Stav (0=nezaškrtnuto, 1=zaškrtnuto)
  • getCount (zjistí počet objektů)
    • Target=Parametry identifikující komponentu(-y)
    • Output=Počet nalezených objektů
  • getHandle (zjistí handle objektu)
    • Target=Parametry identifikující komponentu
    • Output=Handle prvního nalezeného objektu
  • getHandles (zjistí handle objektů)
    • Target=Parametry identifikující komponentu(-y)
    • Output=Čárkou oddělený seznam handlů nalezených objektů
  • getText (vrátí text objektu)
    • Target=Parametry identifikující komponentu nebo okno
    • Output=Text objektu
  • hcGetCount (zjistí počet položek v headeru)
    • Target=Parametry identifikující header (např. handle=$(%WinDriver.WND_GetHeader.out:Output), kde WND_GetHeader je předchozí WinDriver s Command=lvGetHeaderHandle)
    • Output=Počet položek
  • hcGetText (vrátí text položky headeru)
    • Target=Parametry identifikující header
    • Value=Index požadované položky (0 odpovídá první položce)
    • Output=Text položky
  • lbGetCount (zjistí počet položek listboxu)
    • Target=Parametry identifikující listbox
    • Output=Počet položek
  • lbGetCurrent (vrátí index aktuální položky)
    • Target=Parametry identifikující listbox
    • Output=Index aktuální položky
  • lbGetSelected (vrátí index vybrané položky | indexy vybraných položek)
    • Target=Parametry identifikující listbox
    • Value=Pořadové číslo výběru | prázdný
    • Output=Index vybrané položky | středníkem oddělený seznam indexů vybraných položek
  • lbGetSelectedCount (vrátí počet vybraných položek listboxu)
    • Target=Parametry identifikující listbox
    • Output=Počet vybraných položek
  • lbGetText (vrátí text položky listboxu)
    • Target=Parametry identifikující listbox
    • Value=Index požadované položky (0 odpovídá první položce)
    • Output=Text položky
  • lbSetCurrent (nastaví aktuální položku listboxu)
    • Target=Parametry identifikující listbox
    • Value=Index požadované položky (0 odpovídá první položce, -1 ruší výběr)
  • lbSetSelected (výbere položky listboxu)
    • Target=Parametry identifikující listbox
    • Value=index položky | středníkem oddělený seznam indexů položek
  • lbSetUnselected (zruší výběr položek listboxu)
    • Target=Parametry identifikující listbox
    • Value=index položky | středníkem oddělený seznam indexů položek
  • lvGetCount (zjistí počet položek listview)
    • Target=Parametry identifikující listview
    • Output=Počet položek
  • lvGetHeaderHandle (vrátí handle záhlaví listview - viz příkazy hc*)
    • Target=Parametry identifikující listview
    • Output=Handle záhlaví
  • lvGetSelected (vrátí index vybrané položky | indexy vybraných položek)
    • Target=Parametry identifikující listview
    • Value=Pořadové číslo výběru | prázdný
    • Output=Index vybrané položky | středníkem oddělený seznam indexů vybraných položek
  • lvGetSelectedCount (vrátí počet vybraných položek listview)
    • Target=Parametry identifikující listview
    • Output=Počet vybraných položek
  • lvGetText (vrátí text položky listview)
    • Target=Parametry identifikující listview
    • Value=index položky | index položky i spolu s indexem podpoložky s ve tvaru i[s] (i=0 odpovídá první položce, s=1 odpovídá první podpoložce - Value=i[0] je totéž jako Value=i)
    • Output=Text položky | podpoložky
  • lvSetSelected (výbere položky listview)
    • Target=Parametry identifikující listview
    • Value=index položky | středníkem oddělený seznam indexů položek
  • lvSetUnselected (zruší výběr položek listview)
    • Target=Parametry identifikující listview
    • Value=index položky | středníkem oddělený seznam indexů položek
  • sbGetCount (zjistí počet částí v statusbaru)
    • Target=Parametry identifikující statusbar)
    • Output=Počet částí
  • sbGetText (vrátí text požadované části statusbar)
    • Target=Parametry identifikující statusbar
    • Value=Index požadované části (0 odpovídá první části)
    • Output=Text části statusbaru
  • setChecked (nastaví zaškrtnutí checkboxu/radiobuttonu)
    • Target=Parametry identifikující komponentu (typicky typu Checkbox nebo Radiobutton)
    • Value=Požadovaný stav (0=nezaškrtnuto, nenulové celé číslo=zaškrtnuto)
  • setText (nastaví text objektu)
    • Target=Parametry identifikující komponentu nebo okno
    • Value=Text
  • setTimeout (nastaví timeout pro vyhledávání objektů)
    • Value=Čas v sekundách
  • tcGetCount (zjistí počet záložek v tabcontrol)
    • Target=Parametry identifikující tabcontrol
    • Output=Počet záložek
  • tcGetCurrent (vrátí index aktuální záložky v tabcontrol)
    • Target=Parametry identifikující tabcontrol
    • Output=Index aktuální záložky
  • tcGetText (vrátí text požadované záložky v tabcontrol)
    • Target=Parametry identifikující tabcontrol
    • Value=Index požadované záložky (0 odpovídá první záložce)
    • Output=Text záložky
  • tcSetCurrent (nastaví aktuální záložku v tabcontrol)
    • Target=Parametry identifikující tabcontrol
    • Value=Index požadované záložky (0 odpovídá první záložce)

Target

Typ String

Cíl příkazu identifikovaný použitím parametrů:

  • windowHandle
  • windowClass
  • windowText
  • parentHandle
  • parentClass
  • parentText
  • parentIndex
  • handle
  • class
  • text
  • index

Parametry jsou v seznamu odděleny středníkem, např. Target=windowClass=Notepad;class=Edit

Value

Typ String

Hodnota parametru příkazu.

Enabled

Typ Number

Povoluje nebo zakazuje příkaz. Při hodnotě 0 nebude příkaz proveden.

PreWait

Typ Number

Prodleva v milisekundách před provedením příkazu. Nemá žádný vliv je-li Enabled=0.

PostWait

Typ Number

Prodleva v milisekundách po provedení příkazu. Nemá žádný vliv je-li Enabled=0.

Výstupní parametry

Output

Typ String

Výstup příkazu

Wizard

Tento příkaz má vlastního pomocníka pro nastavení (Wizard). Většina důležitých informací o komponentách, na které je WinDriver aplikován, je uživateli skryta. Wizard poskytuje nástroje umožňující tyto informace získat. WinDriverWizard.png

  1. Obsahuje nejpoužívanější typy příkazů. Je zde možné požadovaný příkaz vybrat nebo ponechat sekci bez výběru a příkaz zvolit v nabídce Inspektoru u parametru Command.
  2. Definice cíle příkazu je založena na 3 záchytných bodech: identifikace okna (sekce Window), identifikace kontejneru obsahujícího cíl (sekce Parent) a identifikace samotného cíle (sekce Target), což je okno či komponenta, se kterou má WinDriver interagovat. Z techto polí s ohledem na stav jejich checkboxů je automaticky sestavena definice parametrů v poli Target Parameters. Ve většině případů postačí ponechat hodnoty tak, jak je dosadí funkce Pick. Za pozornost stojí hodnoty v polích Text Pokud např. má okno proměnlivý titulek (např. obsahuje název dokumentu nebo značku oznamující změnu dokumentu), je nutné check box u tohoto pole zrušit nebo hodnotu parametrizovat. Tlačítko Pick spustí režim získávání informací o komponentě pod kurzorem myši. Pokud je červeně orámována správná komponenta, klikněte na červený text PICK v levém horním rohu orámování. Hodnoty v této sekci budou dosazeny podle zjištěných informací.
  3. Pole Value odpovídá hodnotě parametru Value. Pokud je zvolen příkaz Command a pole Target Parameters označuje okno obsahující nabídku (Menu), lze použít tlačítko Commands k výběru položky nabídky a získání identifikátoru odpovídajícího příkazu, který bude dosazen do pole Value. Některé aplikace bohužel neumožňují zjištění textu položky menu.