Esercizio 1.8: Aggiornamento della mappa di oggetto

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)".
  1. Visualizzare i campi ObjectLookedFor e objectFound nella sezione di avviso, posta accanto alla parte inferiore del log.

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.

  1. Visualizzare il campo Numero di riga nel log e annotarsi il numero.
  2. Chiudere il log e tornare a Functional Test.
  3. Fare clic in qualunque punto nella finestra Script, quindi fare clic su Naviga > Vai alla riga.
  4. Immettere il numero di riga dal messaggio di errore del log e fare clic su OK.

    Il cursore si sposta a sinistra di tale numero di riga.

  5. È anche possibile rilevare il numero di riga visualizzando l'indicatore nella parte inferiore della finestra Functional Test. Il numero di riga e la posizione del cursore all'interno della riga vengono mostrati. Ad esempio, "43:9" si riferisce alla posizione della riga 43 che si trova a destra del margine sinistro. La riga dello script deve essere:

    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.

  1. Per trovare l'oggetto, tornare all'elenco Oggetti del test in Script Explorer (pannello destro).

Viene visualizzato l'oggetto "rememberPassword" nella cartella Oggetti del test.

  1. Fare doppio clic sull'oggetto rememberPassword per aprirlo nella mappa di oggetti.
  1. Fare clic su Oggetto del test > Accetta tutto   (Accetta tutto) nel menu mappa di oggetti. Se il comando è di colore grigio, non eseguire alcuna azione.

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.

  1. Se l'oggetto della password non viene selezionato nella mappa, selezionarlo. (Indica l'oggetto definito "Java: checkBox: checkRemember: javax.swing.JCheckBox.)
  2. Visualizzare le proprietà di riconoscimento elencate nella scheda Riconoscimento nella parte inferiore della mappa di oggetto.

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.

Per aggiungere il nuovo oggetto alla mappa, aprire ClassicsB e la finestra di dialogo Registrazione membro.
  1. Fare clic su Applicazioni > Esegui nel menu della mappa di oggetto.
  2. Utilizzare la freccia per selezionare ClassicsJavaB. (Selezionare B.)
  3. Fare clic su OK.
  4. In ClassicsCD, selezionare qualsiasi CD e fare clic su Ordina.

Viene visualizzata la finestra Accesso del membro.

  1. Spostare la mappa dell'oggetto nella parte inferiore del pannello, se necessario, per visualizzarne tutto il contenuto. Nel menu della mappa di oggetto, fare clic su Oggetto del test > Inserisci oggetto(i).

Si tratta dello stesso rispetto allo strumento Ricerca oggetti nella pagina Seleziona un oggetto della procedura Punto di verifica.

  1. Opzione Elimina avanzamento alla pagina successiva se selezionata.
  2. Utilizzare lo strumento Ricerca oggetti per selezionare la casella Ricorda la password nella finestra Accesso del membro.

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à.

  1. Nella pagina Seleziona un oggetto, fare clic su Avanti.
  2. Non modificare alcuna opzione nella pagina Seleziona opzioni dell'oggetto e fare clic su Fine.
Il nuovo oggetto non viene riportato nella mappa di oggetti.
  1. Fare clic su un altro oggetto e la nuova voce viene elencata in colore blu e la parola "Nuovo" viene visualizzata all'inizio della riga.

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.

  1. Per unificare gli oggetti, fare clic sull'oggetto obsoleto (la casella originale viene definita CheckBox: checkRemember) e trascinarlo nel nuovo oggetto dell'elenco. Puntare il cursore sul nuovo oggetto prima di rilasciare il pulsante del mouse.

Viene visualizzata la procedura guidata Unifica oggetti del test.

  1. Allargare la procedura guidata Unifica, se occorre, per visualizzare le informazioni contenute nelle sezioni inferiori.
  2. 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.

  3. Fare clic su Avanti.

Tutti gli script determinati da questa modifica nella mappa di oggetto vengono elencati. Solo uno script, Classics, viene determinato.

  1. Fare clic su Fine.
  2. Nella mappa di oggetto, fare clic sul pulsante File: Salva nella barra degli strumenti della mappa di oggetto per salvare le modifiche effettuate e chiudere tale mappa.
Verrà riprodotto di nuovo lo script in ClassicsB per confermare il trasferimento.
  1. Chiudere le finestre di ClassicsCD.
  2. In Functional Test, fare clic su Esegui script di test funzionale sulla barra degli strumenti.
  3. Selezionare il log Classics, quindi fare clic su Fine.
  4. 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.

  5. Chiudere il log.

Ora è possibile iniziare l'Esercizio 1.9: Modifica delle preferenze di riconoscimento.

Condizioni per l'utilizzo | Commenti
(C) Copyright IBM Corporation 2002, 2004. Tutti i diritti riservati.