Alguien de el Platzi team que pueda poner los recursos de los que habla el profesor? ya van carios videos que promete recursos y no están en la ventana. Gracias
Bienvenida al curso: ¿Qué vamos a aprender?
Automatización de pruebas con Puppeteer
Introducción a la Automatización WEB
¿Qué es el DOM?
Atributos y selectores
Introducción a Puppeteer
¿Qué es Puppeteer?
Configuración de nuestro ambiente
Conociendo Puppeteer
Abriendo y cerrando el navegador
Opciones de lanzamiento
Navegación con Puppeteer
Interactuando con los elementos
Esperar por los elementos
Esperando por funciones
Extrayendo información
Timeouts
Hooks
Conclusión del curso
Próximos pasos
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Javier Fuentes Mora
Aportes 31
Preguntas 17
Alguien de el Platzi team que pueda poner los recursos de los que habla el profesor? ya van carios videos que promete recursos y no están en la ventana. Gracias
Aquí el código del proyecto:
const puppeteer = require('puppeteer');
describe('Mi primer test en puppeteer', () => {
it('Debe abrir y cerrar el navegador', async () => {
const browser = await puppeteer.launch({
headless: false,
});
const page = await browser.newPage();
await page.goto('https://www.google.com');
await page.waitForTimeout(5000);
await browser.close();
}, 10000);
});
Si les da error del navegador solo deben instalar el chromium desde la carpeta de node_modules
cd ./node_modules/puppeteer
npm run install
A la fecha de publicar este aporte la prueba falla cuando se implementa el método waitForTimeout, según vs este método ya está deprecado. Les comparto mi código. ![](
el responsable de los cursos que ponga los recursos que faltan aqui por dios es cierto que ya van varios videos y no pone nada y uno que esta aprendiendo se pierde yo al menos ya me perdi
en que min pusiste el :
it('Debe abrir y cerrar el navegador', async () => {
......
}, 10000);
1000 ?
😊
//importar puppeteer
const puppeteer = require('puppeteer')
//escribir la prueba
describe(' Mi primer test en puppeteer',()=>{
it('Debe de abrir y cerrar el navagador', async() =>{
const browser = await puppeteer.launch({
headless: false
})
const page = await browser.newPage() /
await page.goto('https://es.wikipedia.org/wiki/Wikipedia:Portada') //el navegador.. navega a....
await page.waitForTimeout(1000)
await browser.close()
})
})
A la fecha esta obsoleta la funcion para hacer un delay:
await page.waitForTimeout(5000);
se pruede reemplazar por estas 2 opciones:
new Promise(r => setTimeout(r, 5000))
/// otra solucion
await page.evaluate(() => {
return new Promise((resolve) => {
setTimeout(resolve, 5000);
});
});
Si 2 es menor que el tiempo que toma la prueba para ejecutarse aparece “failed”. Si por ejemplo 1 es mayor que 2, sucede este escenario ya que se está programando que el tiempo de espera tarde mas que el tiempo máximo asignado para la prueba.
Acabe de realizar el código y así me funciono.
const puppeteer=require(‘puppeteer’);
describe(‘Mi primer test en puppeteer’, ()=>{
it(‘Debe abrir y cerrar el navegador’, async () => {
const browser = await puppeteer.launch({
headless: false
});
const page = await browser.newPage();
await page.goto(‘https://www.google.com’);
await browser.close();
}, 20000);
});
Aún no cargan los recursos…
https://github.com/puppeteer/puppeteer
Ejemplo oficial de puppeteer
import puppeteer from 'puppeteer';
(async () => {
// Launch the browser and open a new blank page
const browser = await puppeteer.launch();
const page = await browser.newPage();
// Navigate the page to a URL
await page.goto('https://developer.chrome.com/');
// Set screen size
await page.setViewport({width: 1080, height: 1024});
// Type into search box
await page.type('.search-box__input', 'automate beyond recorder');
// Wait and click on first result
const searchResultSelector = '.search-box__link';
await page.waitForSelector(searchResultSelector);
await page.click(searchResultSelector);
// Locate the full title with a unique string
const textSelector = await page.waitForSelector(
'text/Customize and automate'
);
const fullTitle = await textSelector?.evaluate(el => el.textContent);
// Print the full title
console.log('The title of this blog post is "%s".', fullTitle);
await browser.close();
})();
A la fecha esta obsoleta la funcion para hacer un delay:
await page.waitForTimeout(5000);
se puede reemplazar por estas 2 opciones:
1.new Promise(r => setTimeout(r, 5000))
2.await page.evaluate(() => {
return new Promise((resolve) => {
setTimeout(resolve, 5000);
});
});
recursos please
Tenia un error con WSL para iniciar Google Chrome “Missing X server or $DISPLAY”. La solución es instalar “VcXsrv Windows X Server”. Este video muestra como descargarlo e instalarlo Link.
Código utilizado:
const puppeteer=require(‘puppeteer’)
describe(’ Mi primer test en puppeteer’, ()=>{
it(‘Debe abrir y cerrar el navegador’, async () => {
const browser = await puppeteer.launch({
headless:false
})
const page=await browser.newPage()
await page.goto(‘https://www.google.com’)
await page.waitForTimeout(5000)
await browser.close()
}, 10000)
})
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?