Ich verwende die Methoden page-object-gem und populate_page_with zusammen mit dem Datamagic-Juwel. Ich habe mehrere text_fields in meiner Anwendung im Test, die send_keys eines Wertes und dann send_keys: tab benötigen. Die Anwendung funktioniert einfach nicht, wenn ich den Wert über die Standardmethode des text_field -Elements festlegen.gibt es eine Möglichkeit, einen text_field-Elementtyp zu definieren, der send_key als Standardeinstellung verwendet
Wenn ich eine dieser Begegnung Schlüsselart Felder sende I Stummel nur eine Methode in der Seitenklasse wie folgt:
class SampleThing
include PageObject
include PageObject::PageFactory
include DataMagic
text_field(:dos_start, :id => 'DOSStart')
text_field(:beg_page, :id => 'BegPage')
text_field(:end_page, :id => 'EndPage')
def populate_page(datakey)
my_data = data_for datakey
self.set_dos_start(my_data['dos_start'])
self.beg_page= my_data['beg_page']
self.end_page= my_data['end_page']
end
def set_dos_start(my_data)
self.dos_start_element.send_keys my_data
self.dos_start_element.send_keys :tab
end
end
Gibt es einen besseren Weg, dies zu vertrocknen und eine Art benutzerdefiniertes Element erstellen, die würde es mir erlauben, dies im Seitenobjekt zu definieren und im Wesentlichen die Notwendigkeit zu beseitigen, die popuate_page auszucodieren?
sendkey_field(:dos_start, :id => 'DOSStart')
Vielen Dank für Diese detaillierte Antwort, genau das suche ich – niartseoj