44 puntos por xguru 2022-11-14 | 4 comentarios | Compartir por WhatsApp
  • La automatización/pruebas web tenía a Selenium como estándar de facto
    • Es fácil empezar y soporta casi todos los lenguajes de programación
    • Es suficiente, pero hasta ahí llega
    • No funciona tan bien en sitios con frameworks modernos de JavaScript (Angular, React, ..)
      → No significa que no funcione en absoluto. Significa que no va tan bien
    • Se dice que está bien documentado, pero en la práctica, en cuanto intentas hacer algo un poco fuera del camino principal, es difícil encontrar ejemplos
  • Intenté usar cosas como Chai, Mocha y Cypress, pero la configuración es completamente distinta y para un desarrollador de Python no es fácil
  • Se han creado decenas de alternativas a Selenium, pero la mayoría desaparecen después de unos pocos años

Llega Playwright

  • Es excelente y además importa que lo esté haciendo Microsoft. Probablemente tendrá soporte por mucho tiempo
  • La función estrella de Playwright es la "generación automática de pruebas"
    • Abres el navegador y ejecutas los pasos uno por uno; eso se graba y se convierte en un script de Python
    • Te ahorra el trabajo de buscar cosas como XPath en Selenium
    • Los pasos guardados así se pueden ejecutar casi de inmediato sin modificaciones
  • Otra ventaja es que puedes guardar y revisar el proceso de ejecución en video
  • La única desventaja es que todavía es nuevo. Tiene bastantes bugs y la documentación no es buena
  • Pero viéndolo en general, creo que elegiría Playwright para todos los proyectos nuevos

4 comentarios

 
yangeok 2022-11-21

Habiendo usado puppeteer y logrado pasarme por completo a playwright, creo que solo la función de generación de código de playwright ya hace que valga la pena cambiarse.

 
joone 2022-11-15

Desde la perspectiva de alguien que ha usado Puppeteer durante mucho tiempo y solo usa Node, cambiarse a Playwright no se siente tan fácil de decidir.

 
kunggom 2022-11-15

En lugar de pensar primero en migrar proyectos existentes, ¿qué tal si consideramos seriamente adoptar Playwright cuando iniciemos proyectos nuevos? O quizá también sería buena idea empezar con algún proyecto de prueba.

 
kbumsik 2022-11-14

Parece que Playwright tiene una API más consistente y un poco más limpia entre lenguajes (JS, Python).
Especialmente en Python, el soporte para async está muy bien logrado jaja