javascript - name - Transportador: element.getText() devuelve un objeto y no String
getelementsbyname value (3)
Otra solución puede ser usar
async/await
.
class Page {
constructor() {
this.clientRowName = $(''#CLIENT_NAME'');
}
}
/****************/
it(''should console.log client name'', async () => {
const client = await Page.clientRowName.getText();
console.log(client);
});
Tengo un elemento definido como
this.clientRowName = element(by.id(''CLIENT_NAME'')); //page object file
Quiero leer el texto en este elemento que es "ABC" pero que hace: var client = page.clientRowName.getText ();
devuelve un objeto en lugar de una cadena. ¿Hay alguna otra forma de obtener el texto para el elemento?
Usualmente usé
element.getAttribute(''value'')
getText()
devuelve una promesa
, debe
resolverla
:
page.clientRowName.getText().then(function (text) {
console.log(text);
});
O, si solo quiere afirmar el texto,
expect()
resuelva la promesa por usted:
expect(page.clientRowName.getText()).toEqual("ABC");
Las promesas y la página de documentación de Control Flow deberían aclarar las cosas.