Привет, ребята! Мне нужна помощь для сценария
- У меня есть массив с, скажем, объектами Google, Yahoo 100.
- Если Google делает X
- Остальное Yahoo do Y
Это легко сказать, скажем, Java Selenium, просто переберите оператор if и запустите браузер, если кукловод работает асинхронно, как я могу добиться этого с помощью Javascript? Также использую Jest.
Я попытался сделать цикл foreach асинхронным, чтобы его можно было запускать в ожидании, но очевидная проблема заключается в том, что он запускает все браузеры одновременно.
Хотел бы избежать цепочек обещаний для кукловода.
describe('Sample Test', () => {
let browser
let page
beforeAll(async () => {
browser = await puppeteer.launch()
page = await browser.newPage()
})
afterAll(async () => {
await browser.close()
})
it('should search on google and navigate to domain', async () => {
jest.setTimeout(500000)
let numOfTotalVists = await helpers.getTotalVisits()
numOfTotalVists.forEach(element => {
if (element.includes('Google')) {
browser = puppeteer.launch()
page =browser.newPage()
browser.close()
}
console.log('no')
browser = puppeteer.launch()
page = browser.newPage()
browser.close()
})