2012-12-13 20 views
5

Wyobraźmy mam obraz jak:Jak uzyskać wartość atrybutu elementu page_object?

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

The sposób, aby uzyskać wartość tej klasy mogą być:

image_status = the_image.attribute_value('class') 

OK. Używam page_object gem i pozwala Załóżmy, że mam obraz jako elementu, jak:

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

Aby uzyskać ATTRIBUTE_VALUE mogę używać:

image_status = the_image_element.attribute_value('class') 

... ale ja dostać amortyzację OSTRZEŻENIE:

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

Jak mogę uzyskać wartość class za pomocą elementu page_object? Na pewno odpowiedź jest prosta, ale jej nie znalazłem. Czy możesz mi powiedzieć, w jaki sposób?

Z góry dziękuję!

+0

błąd nie zostanie pokazany w kontekście swojej klasie stronę obiektu. Może możesz dodać więcej do pytania? –

+0

Cześć Dave! Nie było błędu, tylko i tylko Ostrzeżenie. W rzeczywistości metoda działa poprawnie. Problem polega na tym, że nie wiem, jak uzyskać wartość atrybutu za pomocą obiektu strony natywnie. Justin Ko daje mi odpowiedź: 'yourelement_element.attribute ('attribute_type')' – Ezetha

Odpowiedz

5

Jeśli używasz najnowszych wersji Page-Object i Watir (odpowiednio v2.2.1 i v.7.7.3), attribute_value nie będzie już ostrzegał przed wycofaniem. Obsługiwane są zarówno #attribute, jak i #attribute_value.

Dla starszej wersji strony-Object, trzeba użyć metody #attribute:

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

Masz absolutną rację. Przeszukałem go i wyszukałem książkę Cheezy, ale niczego nie znalazłem. Patrzyłem również na informacje Cheezy'ego Rubydoka, ale wygląda na to, że nie przeszukałem poprawnie ... Potrócę następnym razem; Dziękuję za odpowiedź! – Ezetha

+0

Yout link jest unfirtunately broken – SSchneid

+0

Dzięki @SSchneid. Usunąłem link. Metoda nie jest już zdefiniowana bezpośrednio w gemie Page-Object. Jest teraz delegowany do ukrytego "Watir :: Element". –

Powiązane problemy