Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Sitespeed.io with Lighthouse Using JavaScript for Multiple URLs

Abierto
#134 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
25/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
docker, javascript

Línea de trabajo

Start with plugin-lighthouse/index.js and reproduce the documented Docker command using prueba.js. Trace where the plugin rejects scripting or multiple pages, then define how Lighthouse reports should be produced for each URL in the workflow. Done means the script can run across multiple URLs and generate the requested Lighthouse results without that error.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Feature Request

Description:
I would like to request the ability to integrate Sitespeed.io with Lighthouse using a JavaScript script that handles multiple URLs. Currently, it seems that Lighthouse can only be used on individual URLs and not with scripting/multiple pages, which limits the ability to perform comprehensive performance testing on workflows that span multiple pages.

Use Case:
My use case involves running a script (e.g., prueba.js) that navigates through multiple pages of a web application, performs various actions, and measures performance. I would like to include Lighthouse reports for each of the URLs involved in this script to get detailed performance insights.

Steps to Reproduce:

  1. Created a script (prueba.js) to navigate through multiple pages:

    module.exports = async function(context, commands) {
      try {
        await commands.measure.start('Tx_login');
        await commands.navigate('https://opensource-demo.orangehrmlive.com/web/index.php/auth/login');
        await commands.addText.byXpath('Admin', '//input[@placeholder="Username"]');
        await commands.addText.byXpath('admin123', '//input[@placeholder="Password"]');
        await commands.click.byXpath('//button[@type="submit"]');
        await commands.wait.byTime(1000);
        await commands.measure.stop();
        await commands.measure.start('Tx_adminSearch');
        await commands.click.byXpath('//a/span[contains(.,"Admin")]');
        await commands.wait.byTime(1000);
        await commands.click.byXpath('//div[2]/input');
        await commands.addText.byXpath('admin', '//div[2]/input');
        await commands.click.byXpath('//button[@type="submit"]');
        await commands.wait.byTime(1000);
        await commands.scroll.toBottom();
        await commands.measure.stop();
        await commands.measure.start('Tx_consultRecruit');
        await commands.click.byXpath('//a/span[contains(.,"Recruitment")]');
        await commands.wait.byTime(1000);
        await commands.click.byXpath('//i[@class="oxd-icon bi-eye-fill"]');
        await commands.wait.byTime(1000);
        await commands.click.byXpath('//a[contains(.,"Vacancies")]');
        await commands.wait.byTime(1000);
        await commands.measure.stop();
        await commands.measure.start('Tx_directory');
        await commands.click.byXpath('//a/span[contains(.,"Directory")]');
        await commands.wait.byTime(1000);
        await commands.click.byXpath('//span/i');
        await commands.click.byXpath('//a[contains(text(),"Logout")]');
        await commands.wait.byTime(1000);
        await commands.measure.stop();
      } catch (e) {
        // Handle error
      }
    };
    
  2. Executed the script with the following Docker command:

    docker run --rm -v /home/sitespeed:/sitespeed.io sitespeedio/sitespeed.io --plugins.add /sitespeed.io/plugin-lighthouse/index.js prueba.js --multi -n1
    
  3. Received the following message:

    Lighthouse can only be used on URLs and not with scripting/multiple pages at the moment
    

Desired Outcome:
It would be great if there could be an option or plugin to integrate Lighthouse in a way that it can run for multiple URLs specified in a script. This integration would help in automating the performance analysis for workflows involving multiple pages.

Thank you for considering this feature request!

Lenguaje dominante
JavaScript
Estrellas
31
Forks
21
Métricas de merge de PR
Sin PR fusionados en 30 d

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de sitespeedio/plugin-lighthouse

Todos los issues de sitespeedio/plugin-lighthouse

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.