Prima di iniziare, è necessario completare l'Esercizio 1.7: Utilizzo del Comparator per aggiornare un punto di verifica.
In questo esercizio, sarà corretto l'avviso di riconoscimento dell'oggetto utilizzando la mappa di oggetto. Sarà utilizzata anche un'espressione regolare per un riconoscimento dell'oggetto più flessibile.
Quando si visualizza un errore o un avviso di riconoscimento, visualizzare il messaggio di log. Alla fine dell'esercizio 1.7, non chiudere il log. Se non è aperto, aprirlo facendo doppio clic nella vista Progetti. Un singolo avviso resta nel log. L'intestazione di eventi è "Il riconoscimento di oggetti è debole (al di sopra della soglia di avviso)".In ClassicsA, il nome del campo della password è Ricorda password. In ClassicsB è Ricorda la password. Quando viene riprodotto lo script in ClassicsB, il riconoscimento di oggetto non corrisponde a causa di questa differenza.
Il cursore si sposta a sinistra di tale numero di riga.
RememberPassword().clickToState(SELECTED);
Questa riga indica la selezione sulla casella della password. Questa riga dello script mostra l'oggetto difettoso. È possibile ricercare tale oggetto nella mappa di oggetti.
Viene visualizzato l'oggetto "rememberPassword" nella cartella Oggetti del test.
Il colore del testo di tutti gli oggetti viene modificato in nero. Il testo è blu (per indicare i nuovi oggetti) fino ad accettare gli oggetti in una mappa. È necessario accettare gli oggetti alla prima visione al momento in cui viene creata di recente la mappa di oggetti.
Per aggiungere il nuovo oggetto alla mappa, aprire ClassicsB e la finestra di dialogo Registrazione membro.E' possibile verificare che si tratti dell'oggetto di ClassicsA, poiché indica "Ricorda password" nella proprietà accessibleContext.accessibleName. Questo è l'oggetto "precedente". Tuttavia, quando è stato riprodotto lo script in ClassicsB, il testo per l'oggetto è stato modificato, quindi Functional Test lo riconosce come "nuovo". Si desidera utilizzare le proprietà del nuovo oggetto in tal caso, quindi è necessario aggiungerlo alla mappa.
Viene visualizzata la finestra Accesso del membro.
Si tratta dello stesso rispetto allo strumento Ricerca oggetti nella pagina Seleziona un oggetto della procedura Punto di verifica.
Una volta selezionata la casella di controllo, la proprietà accessibleContext.accessibleName è ora "Ricorda la password ." Espandere i bordi della mappa di oggetto, se necessario, per visualizzare le proprietà.
Il nuovo oggetto non viene riportato nella mappa di oggetti.
Il nuovo oggetto e quello obsoleto sono elencati nella mappa. Si desidera unificare i due oggetti e utilizzare le proprietà desiderate per il nuovo oggetto.
Viene visualizzata la procedura guidata Unifica oggetti del test.
Nella sezione in basso a sinistra, vengono visualizzate le proprietà dell'oggetto originale. Dovrebbero essere denominate "Source: RememberPassword." Indica il testo visualizzato sulla casella in ClassicsA. Nella sezione in basso a destra, dovrebbe essere definito "Target: RememberThePassword." Indica il testo visualizzato nella casella di controllo ClassicsB.
Poiché viene trascinato il vecchio oggetto nel nuovo oggetto, le proprietà di riconoscimento del nuovo oggetto sono compilate nella parte superiore della procedura guidata. In generale, Functional Test inserisce le nuove proprietà all'inizio se si trattano di proprietà desiderate. Tuttavia, alcune proprietà amministrative obsolete potrebbero essere desiderate. Ad esempio, Functional Test considera espressioni regolari nella serie di proprietà obsoleta. Per utilizzare una proprietà dal vecchio oggetto, fare doppio clic su tale proprietà nella griglia del vecchio oggetto e sarà copiato nell'oggetto unificato. In tal caso, utilizzare tutte le proprietà del nuovo oggetto, che sono già compilate.
Tutti gli script determinati da questa modifica nella mappa di oggetto vengono elencati. Solo uno script, Classics, viene determinato.
Lo script viene trasferito senza avvisi! La riproduzione non viene più interrotta sull'oggetto della casella password, poiché le proprietà di riconoscimento corrispondono.
Questa unificazione di oggetti indica un metodo semplice per aggiornare gli script quando le proprietà di riconoscimento dei un oggetto vengono modificate in modo volontario. Uno dei principali vantaggi di questa funzione è che se la mappa di oggetti viene utilizzata da molti script, è possibile aggiornarli quando si apporta la modifica nella procedura. Invece della modifica manuale di più script, è possibile apportare la modifica una sola volta nella mappa e viene propagata automaticamente a tutti gli script in uso. Tale funzione può risparmiare tempo.
Nota: esiste anche un altro metodo semplice per aggiornare le proprietà di riconoscimento di un oggetto del test da modificare. Invece di utilizzare la procedura Unifica come descritto in questo esercizio, nella Mappa di oggetti, è possibile selezionare l'oggetto del test di cui si desidera aggiornare le proprietà di riconoscimento. Fare clic con il tastino destro del mouse sull'oggetto del test appena viene visualizzato nella struttura ad albero Mappa di oggetti e selezionare Aggiorna proprietà di riconoscimento nel menu a discesa. Sarà necessario eseguire l'applicazione del test quando questa azione viene eseguita in modo tale che Functional Test può ottenere le proprietà di riconoscimento aggiornate. Utilizzare solo questo metodo di aggiornamento se non si desidera utilizzare le proprietà dell'oggetto obsoleto.
Ora è possibile iniziare l'Esercizio 1.9: Modifica delle preferenze di riconoscimento.