const puppeteer = require('puppeteer'); const url = "http://localhost:3000/users"; const urlMass = ['/users','/tariffs','/discounts','/promocode','/support', '/entities']; let browser; let page; describe('Тест', (() => { beforeAll(async()=>{ browser = await puppeteer.launch({headless:true}); page = await browser.newPage(); await page.goto(url); // Set screen size await page.setViewport({width: 1080, height: 1024}); }) afterAll(() => browser.quit()); test('Тест меню',async () => { // Ждем загрузки менюшек await page.waitForSelector('.menu') // Берем все ссылки с кнопок, у которых есть класс menu и вставляем в массив let menuLink = await page.evaluate(()=>{ let menuArray = document.querySelectorAll('.menu') let Urls = Object.values(menuArray).map( menuItem => ( menuItem.href.slice(menuItem.href.lastIndexOf('/')) ) ) return Urls }) // Проверяем, какие ссылки есть в нашем массиве, а каких нет for (let i = 0; i < menuLink.length; i++) { expect(urlMass.find((elem)=>elem===menuLink[i])).toBe(true) } }) }))