ich nach dem Beispiel, um Elemente innerhalb pageObjects zu definieren, die ID-Selektor ...Webdriver.io Pageobject pattern - definieren Wählelement durch Argument übergeben
var Page = require('./page')
var MyPage= Object.create(Page, {
/**
* define elements
*/
firstName: { get: function() { return browser.element('#firstName-0'); } },
lastName: { get: function() { return browser.element('#lastName-0'); } },
...
ich einen Weg suchen passieren ein Argument, mit dem ich den Selektor dynamisch definieren könnte. z.B. '#firstName-0'
Ich hätte gerne '#firstName-' + i
, also könnte ich mehrere Vornamen sammeln.
Ich habe
versuchtfirstName: { get: function (i) { return browser.element('#firstName-' + i);}}
dann im Test ..
MyPage.firstName.get(0).setValue('foo');
aber es beschwert sich, dass get()
keine Funktion ist.
Doe jemand Ideen haben?
könnten Sie bitte versuchen, den Namen der anderen Methode zu ändern, als 'erhalten 'und aktualisieren. – nullpointer
Entschuldigung, nicht sicher, was Sie bekommen? –
Ich vermute, dass es einen Konflikt beim Zugriff auf Elemente einer Liste ('list.get (index)') gibt und eine Methode hier aufruft (in Ihrem Fall 'get (i)') und sicherstellen will, dass Sie nicht ' Ende in. – nullpointer