Desidero utilizzare .sendKeys()
per immettere il testo in un campo di input e quindi eseguire il backspaces di un carattere. Ho provato a utilizzare il seguente codice con .sendKeys(protractor.Key.BACK_SPACE)
ma sembra che cancelli l'intero campo.Come inserire un singolo backspace con Protractor?
La mia prova:
describe('backspace', function() {
it('types some stuff and backspaces one character', function() {
element(by.model('invoice.customerName')).sendKeys('Ali Khoda');
element(by.model('invoice.customerName')).sendKeys(protractor.Key.BACK_SPACE);
expect(element(by.model('invoice.customerName')).getText()).toBe('Ali Khod');
});
});
L'errore: Expected '' to be 'Ali Khod'.
C'è un modo per far tornare indietro solo un singolo carattere?
UPDATE:
Ho anche provato il seguente dato .sendKeys()
restituisce una promessa per impostazione predefinita.
describe('backspace', function() {
it('types some stuff and backspaces one character', function() {
element(by.model('invoice.customerName')).sendKeys('Ali Khoda').then(function() {
element(by.model('invoice.customerName')).sendKeys(protractor.Key.BACK_SPACE).then(function() {
expect(element(by.model('invoice.customerName')).getText()).toBe('Ali Khod');
});
});
});
});
Il test ha esito negativo.
L'utilizzo di sendKeys (protractor.Key.BACK_SPACE) ha funzionato bene per me. – binarygiant