У меня есть код, похожий на этот:
ExamPage.prototype.enterDetailsInputData = function (modifier) {
page.sendKeys(this.modalExamName, 'Test Exam ' + modifier);
page.sendKeys(this.modalExamVersionId, 'Test exam version ' + modifier);
page.sendKeys(this.modalExamProductVersionId, 'Test exam product version ' + modifier);
page.sendKeys(this.modalExamAudienceId, 'Test exam audience ' + modifier);
page.sendKeys(this.modalExamPublishedId, '2014-06-1' + modifier);
page.sendKeys(this.modalExamPriceId, '100' + modifier);
page.sendKeys(this.modalExamDurationId, '6' + modifier);
};
Здесь функция page.sendKeys. Обратите внимание, что в настоящее время это не делает возврат promises или что-то в этом роде. Если функция не кодируется хорошо, я приветствую комментарии:
// page.sendkeys function
sendKeys(id: string, text: string) {
element(by.id(id)).sendKeys(text);
}
Я смотрю, как он медленно заполняет каждое поле на моем экране, а затем повторяет его снова и снова в следующих тестах.
Есть ли способ, которым это можно было бы оптимизировать, или мне нужно ждать, пока одно поле за другим заполнит и не будет жить с тестами, для выполнения которых требуется много времени?
Я предполагаю, что sendKeys - это обещание. Могу ли я, например, использовать AngularJS $q, чтобы выпустить все sendKeys одновременно, а затем использовать $q, чтобы дождаться их завершения?