2012-12-13 10 views
5

Immaginate ho un immagine come:Come ottenere il valore_attributo di un elemento page_object?

the_image = @browser.image(:id, 'image01') 

Il modo per ottenere il valore della sua classe potrebbe essere:

image_status = the_image.attribute_value('class') 

Ok. Sto usando page_object gemma e lascia Supponiamo che io ho l'immagine come elemento, come:

image(:the_image, :id => 'image01') 

Per ottenere il valore_attributo posso usare:

image_status = the_image_element.attribute_value('class') 

... ma ho un deprecazione ATTENZIONE:

*** DEPRECATION WARNING 
*** You are calling a method named attribute_value at page.rb:68:in `get_status'. 
*** This method does not exist in page-object so it is being passed to the driver. 
*** This feature will be removed in the near future. 

Come posso ottenere il valore class utilizzando l'elemento page_object? Certo, la risposta è facile ma non l'ho trovata. Puoi dirmi per favore la via?

Grazie in anticipo!

+0

L'errore non risulta, in contesto della classe oggetto pagina. Forse puoi aggiungere altro alla domanda? –

+0

Ciao Dave! Non ci sono stati errori, solo e solo l'avvertimento. In effetti, il metodo funziona correttamente. Il problema è che non sapevo come ottenere il valore dell'attributo usando l'oggetto pagina in modo nativo. Justin Ko mi dà la risposta con: 'yourelement_element.attribute ('attribute_type')' – Ezetha

risposta

5

Se si utilizzano le ultime versioni di Page-Object e Watir (rispettivamente v2.2.1 e v6.7.3), lo attribute_value non darà più un avviso di ritiro. Sono supportati sia #attribute sia #attribute_value.

Per la versione precedente di Pagina-oggetto, è necessario utilizzare il metodo #attribute:

image_status = the_image_element.attribute('class') 
+0

Hai assolutamente ragione. Ho cercato su Google e sul libro di Cheezy e non ho trovato nulla. Ho anche guardato le informazioni su Cheezy Rubydoc ma sembra che non ho cercato correttamente ... controllerò la prossima volta; Grazie per la risposta! – Ezetha

+0

Il collegamento Yout non funziona correttamente – SSchneid

+0

Grazie a @SSchneid. Ho rimosso il collegamento. Il metodo non è più definito direttamente nella gemma Page-Object. Ora viene delegato al sottostante 'Watir :: Element'. –