1.4.1 • Published 1 year ago

lighthouse-aggregate-report v1.4.1

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
1 year ago

lighthouse-aggregate-report

A Google Lighthouse aggregate Test Reporter

PDF CI

Installation

npm install lighthouse-aggregate-report

Usage

More examples can be found inspecting the Tests

1) Default Lighthouse report (performance, accessibility, pwa, best-practices, seo):

  ```javascript
   import { lighthouseReport } from 'lighthouse-aggregate-report';
   const options = {
        url: 'https://google.com',
   };
   const results = await lighthouseReport(options);
   console.log(results)
   Output:  { performance: 50, 'accessibility': 83, pwa: 88, best-practices: 90, seo:100}
   Assertion: expect(results.performance >= 80).toBeTruthy();
 ```

2) Only selected metrics (e.g., 'accessibility', 'pwa'):

  ```javascript
   import { lighthouseReport, Categories } from 'lighthouse-aggregate-report';
   const options = {
        url: 'https://google.com',
        lighthouse: { 
        onlyCategories: [
            Categories.accessibility,
            Categories.pwa
        ] 
      },
   };
   const results = await lighthouseReport(options);
   console.log(results)
   Output:  { 'accessibility': 83, pwa: 88 }
   Assertion: expect(results.accessibility).to.eq(myThreshold)

 ```

3) Selected Audit metrics:

  ```javascript
   import { lighthouseReport, Audits } from 'lighthouse-aggregate-report';
   const options = {
        targetUrl: 'https://google.com',
        lighthouse: {
          onlyAudits: [
              Audits.firstContentfulPaint,
              Audits.interactive
          ],
       },
   };
   const results = await lighthouseReport(options);
   console.log(results)
   Output: {  performance: 97,  accessibility: 80,   pwa: 50, 'best-practices': 100,  seo: 85, interactive: 100,  'first-contentful-paint': 99 }
   Assertion: expect(results.interactive).to.eq(myThreshold)

 ```    

4) Full head (will open the browser) to troubleshoot the Login (set headed=true in the Login parameter):

  ```javascript
   import { lighthouseReport } from 'lighthouse-aggregate-report';
   const options = {
        Login: {
            headed: true
        },
   }; 
 ``` 

5) Mobile Report (set isMobile=true):

  ```javascript
   import { lighthouseReport } from 'lighthouse-aggregate-report';
    const options = {
         isMobile: true,
         targetUrl: 'https://google.com',
    };

 ```       

6) Generate HTML Report (set htmlReport=true):

  ```javascript
   import { lighthouseReport } from 'lighthouse-aggregate-report';
    const options = {
         htmlReport: true,
         targetUrl: 'https://google.com',
    };
 ```        

7) Debug errors (set debug=true):

  ```javascript
   import { lighthouseReport } from 'lighthouse-aggregate-report';
   const options = {
        targetUrl: 'https://notavalidurl.com/',
        lighthouse: {
           debug: true,
        },
   };
  results = await lighthouseReport(options);
  console.log(results.error)
 ```     

Contribution

Fork, add your changes and create a pull request

1.4.1

1 year ago

1.4.0

1 year ago

1.3.3

2 years ago

1.3.2

2 years ago

1.3.1

2 years ago

1.3.0

2 years ago

1.2.3

2 years ago

1.2.2

2 years ago

1.2.1

2 years ago

1.2.0

2 years ago

1.1.0

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago