i want to enter a keyboard input - TAB or ENTER in a protractor e2e test. Ive tried using the below examples, but the TAB or ENTER input is never registered. I can input the text with sendKeys in my origin and destination fields and i can click my search button, but the search never really executes, because ENTER or TAB was never registered. I have tried these options for keyboard input:
page.getOrigin().sendKeys(protractor.Key.ENTER); page.getOrigin().sendKeys(protractor.Key.ENTER).perform();
protractor - 5.3.1
spec.ts
import { PageObject } from './playground.po'; import { browser, by, element, ExpectedConditions, $, protractor } from 'protractor'; import { Config } from 'protractor';
describe('test', () => { let page: PageObject;
;
beforeEach(() => {
page = new PageObject();
browser.waitForAngularEnabled(false);
browser.get(browser.params.baseUrl);
});
it('a search in USA', () => {
browser.sleep(1 * 2000);
page.getOrigin().clear();
page.getOrigin().sendKeys('California');
page.getOrigin().sendKeys(protractor.Key.ENTER);
page.getDestination().clear();
page.getDestination().sendKeys('Boston');
page.getDestination().sendKeys(protractor.Key.ENTER);
page.getSearchButton().click();
browser.sleep(1 * 2000);
});
pageObject
import { browser, by, element } from 'protractor';
export class PageObject {
getOrigin() {
return element(by.className('originSearch')).element(by.name('origin'));
}
getDestination() {
return element(by.className('destinationSearch')).element(by.name('destination'));
}
getSearchButton() {
return element(by.css('div.searchButton'));
}
}