Selenio - IDE Pattern Matching
Come i localizzatori, i pattern sono un tipo di parametro frequentemente utilizzato da Selenium. Consente agli utenti di descrivere i modelli con l'aiuto di caratteri speciali. Molte volte, i testi che vorremmo verificare sono dinamici; in tal caso, il pattern matching è molto utile.
La corrispondenza del modello viene utilizzata con tutti i comandi del punto di verifica: verifyTextPresent, verifyTitle, verifyAlert, assertConfirmation, verifyText e verifyPrompt.
Ci sono tre modi per definire un modello:
- globbing
- espressioni regolari e
- modelli esatti.
Globbing
La maggior parte dei tecnici che hanno utilizzato modelli di corrispondenza dei file in Linux o Windows durante la ricerca di un determinato tipo di file come * .doc o * .jpg. avrebbe familiarità con il termine "globbing"
Il globbing in Selenium supporta solo tre caratteri speciali: *,? E [].
* - corrisponde a qualsiasi numero di caratteri.
? - corrisponde a un singolo carattere.
[ ]- chiamata classe di caratteri, ti permette di abbinare ogni singolo carattere trovato tra parentesi. [0-9] corrisponde a qualsiasi cifra.
Per specificare un glob in un comando Selenium, anteponi al pattern la parola chiave "glob:". Ad esempio, se desideri cercare i testi "anno fiscale 2013" o "anno fiscale 2014", puoi utilizzare il golb "anno fiscale *" come mostrato di seguito.
Tuttavia, l'utilizzo di "glob:" è facoltativo mentre si specifica un modello di testo perché i modelli di globbing sono l'impostazione predefinita in Selenium.
Comando | Bersaglio | Valore |
---|---|---|
clickAndWait | link = ricerca | |
verifyTextPresent | glob: anno fiscale * |
Modelli esatti
I modelli con il prefisso "esatto:" corrisponderanno al testo specificato così com'è. Supponiamo che l'utente desideri una corrispondenza esatta con la stringa del valore, ovvero, senza che l'operatore glob faccia il suo lavoro, si può utilizzare il modello "esatto" come mostrato di seguito. In questo esempio l'operatore "*" funzionerà come un carattere normale piuttosto che come un carattere jolly di corrispondenza del modello.
Comando | Bersaglio | Valore |
---|---|---|
clickAndWait | link = ricerca | |
verificareValore | esatto: * .doc |
Espressioni regolari
Le espressioni regolari sono le più utili tra le tecniche di corrispondenza dei modelli disponibili. Selenium supporta il set completo di pattern di espressioni regolari supportati da Javascript. Quindi gli utenti non sono più limitati da *,? e [] modelli di globbing.
Per utilizzare i pattern RegEx, dobbiamo anteporre "regexp:" o "regexpi:". Il prefisso "regexpi" non fa distinzione tra maiuscole e minuscole. I pattern glob: e exact: sono i sottoinsiemi dei pattern di espressione regolare. Tutto ciò che viene fatto con glob: o exact: può essere realizzato con l'aiuto di RegExp.
Esempio
Ad esempio, quanto segue verificherà se un campo di input con l'ID "nome" contiene la stringa "anno fiscale", "anno fiscale" o "anno fiscale".
Comando | Bersaglio | Valore |
---|---|---|
clickAndWait | link = ricerca | |
verificareValore | id = nome | regexp: [Tt] ax ([Yy] ear) |