У меня есть функция, которая принимает число в качестве параметра, которое будет количеством раз, которое должны быть выполнены действия цикла.
async add(n) {
for (let i = 0; i < n; i++) {
const num = Math.floor(Math.random() * 999)
await EC.isVisible(this.s.tm.button.invite)
await this.el.clickElement(this.s.tm.button.invite)
await EC.isVisible(this.s.tm.modal.container)
await this.form.populateFormField(this.s.tm.modal.firstName, i)
await this.form.populateFormField(this.s.tm.modal.lastName, i)
await this.form.populateFormField(this.s.tm.modal.email,`${num}@${i}.es`)
await this.el.clickElement(this.s.tm.modalButton.invite)
await EC.isVisible(this.s.tm.successModal.container)
await this.el.clickElement(this.s.modal.close)
}
}
Иногда я получаю stale element error
и убежище 'не смог избавиться от этого.Это указывает на эту строку: await this.el.clickElement(this.s.tm.button.invite)
Я понимаю, что элемент, по которому нужно щелкнуть, отсутствует в DOM в момент, когда должен быть выполнен щелчок.Я пробовал несколько решений, которые я нашел в похожих постах, но ни одно из них не сработало.
Может кто-нибудь объяснить, почему ждет, пока элемент будет виден, а затем, щелкнув по нему, он не работает?
IЯ также пытался сохранить локаторы в переменной и затем выполнить над ними действия, но это не сработало.