forEach()
метод не работает должным образом с функциями, которые возвращают Promise. Вы можете использовать для этого for ... of
конструкцию. Также имейте в виду, что если вы используете webdriver-io
в режиме async
, вы всегда должны разрешать методы, которые возвращают Promise. Взгляните на тест рефакторинга:
describe('Home', () => {
it('should get count of the links and click on them and verify the person exists', async () => {
await browser.url('/')
const title = await browser.getTitle()
expect(title).toBe('Force Vue Awakens')
const links = await $$('#links a') //here you missed await
const count = links.length
expect(count).toBe(10)
const beforeUrl = await browser.getUrl()
for (let link of links) {
await link.click();
const afterUrl = await browser.getUrl()
expect(afterUrl).not.Equal(beforeUrl) // here use your assertion library
}
})
})