I am trying to understand how running lighthouse as CI helps me. What I understood is on every PR lighthouse will run on my application that runs on a localhost. But my end users are using the prod environment which is drastically different from localhost and hence the performance scores will be different too. Also i wont be monitoring the exact experience what the end users will be having. An angular app runs on JIT when running on localhost (dev) and turns on the AOT only in prod env. How are we expecting lighthouse CI to give us exact performance scores. Seeking some counter suggestions.
Rationale behing using Lighthouse as github CI
116 views Asked by Himanshu Saraswat At
1
There are 1 answers
Related Questions in GITHUB-ACTIONS
- How do I create a test passing badge for my yaml below
- Driver com.microsoft.sqlserver.jdbc.SQLServerDriver claims to not accept jdbcUrl, ${SPRING_DATASOURCE_URL}: GitHub Actions
- Trying to update the version.go file with the release tag from GitHub actions but its failing
- While Running Github Actions Pipeline: No Signing Certificate "iOS Development" found: No "iOS Development" signing certificate matching team ID
- Gradle SAXParseException cvc-complex-type.2.4.a
- Unable to deploy to GAE from Github Actions
- Set environment variable during push for GitHub Actions
- Error: P1001: Can't reach database server at `db`:`5432` on github actions
- Android SafeArgs gives error with GitHub actions
- How to restore nuget from private github feed using Github App and no PAT?
- Github Actions/variable-mapper : Error: Unexpected token *** in JSON
- Github action Post Run fails workflow
- How to push multiple changes from matrix in Github Actions
- Display coverage report on browser
- Unable to use env variable from prd environment context
Related Questions in LIGHTHOUSE
- Why does Dynamic and Suspense Make Lighthouse Scores Worse?
- Why is TBT on PSI so different from my local machine?
- Lighthouse performance Largest Contentful Paint element
- React.lazy doesn't improve lighthouse or PageSpeed Insights score. Is it a problem actually?
- What information does 'timing.entries' section gives in Lighthouse report?
- Is there any alternative to cleanup function of useEffect?
- Nuxt Speedkit breaks Lighthouse Chrome extension
- how can i fix Largest contentful paint (lcp) issue for mobile
- How to further mitigate bad web vitals LCP results?
- Element hide and show causing the Largest Contentful Paint 8000ms
- Lighthouse reduce unused javaScript
- Dzava Lighthouse index.js: not found using laravel
- Lighthouse PHP : Return type depending on guard
- Lighthouse playwrite :: TypeError: Failed to fetch browser webSocket URL from http://127.0.0.1:9222/json/version: fetch failed
- lighthouse Playwright- Instead change the require of index.js, to a dynamic import() which is available in all CommonJS modules
Related Questions in GITHUB-CI
- Github Actions worklfow logs are not expandable anymore
- Sporadic Windows fatal error on Github Python CI (may be joblib related)
- Getting pull request messages that merged into master branch
- Use `-skipMacroValidation` for xcodebuild command when using an external package that includes macros
- Codecov on github: why is Codecov failing?
- Cancel workflows before archiving repo in GitHub
- GitHub CI - Docker .env file not found
- Rationale behing using Lighthouse as github CI
- Github CI run getting failed without change from 15 June ERROR: Error: ENOENT: no such file or directory, stat '/var/folders/sp/m
- How can I make sure a Github Workflow can be used by only selected repositories/workflows in my Github Organization?
- Error: User: *** is not authorized to perform: sts:AssumeRole on resource: *** Github
- Where does github actions stores the log files?
- Springboot test not connecting to database in github CI
- Github Actions doesn't get triggered on release creation
- Encountering 'E:Invalid archive signature' on GitHub workflow ansible execution when same execution succeeds in local Docker container
Related Questions in LIGHTHOUSE-CI
- how to avoid Reached gathering budget of 5s warning in lighthouse
- Inconsistent results with Lighthouse audit report - on a site locally hosted
- How do you target desktop mode running Lighthouse in a pipeline
- Lighthouse API: how to retrieve "diagnostics" part in CSV or JSON format? I can only do it in HTML format
- Using lighthouse node module getting very high LCP value for the page compare to measuring it through chrome add on
- Rationale behing using Lighthouse as github CI
- How can I submit the output of a step in GitHub Actions as a comment?
- How to add custom network throttling in playwright-lighthouse package
- fatal: could not read Username for 'https://github.com': terminal prompts disabled
- How to Automate web performance tools in React Application other than lighthouse
- Audit did not produce a value Cumulative Layout Shift in Lighthouse-CI
- Lighthouse CI failing with cryptic errors on Azure DevOps pipeline
- Lighthouse CI - Unable to set Authentication for Terraform K8s Deployment
- Can lighthouse-ci output the line of code that has error?
- Using Google Lighthouse with multiple sites simultaneously in a script
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
It's true the Lighthouse Performance score is subject to high variability and that development environment can be quite different to the production environment.
Lighthouse gives a lot more info than just the Performance Score. The other audits can pick up performance best practices (e.g. ensuring things like image width and heights are set, JavaScript file sizes...etc.). So there is plenty of value in running Lighthouse even though the score is different. In fact in the past I have advocated ignoring the time-related scores completely due to their variability.
However, the performance metrics can also be useful to catch regressions, provided you can deal with the variability (e.g. have dedicated runners of similar specs, and rerunning multiple times and picking the median run). Think of the score more as a comparative number for multiple similar runs, rather than an absolute score.
Finally, you are right that any lab-based performance test may, or may not, be representative of how real users experience your website. As per above, Lighthouse can still catch potential performance problems or regressions but it does not guarantee good performance ultimately post-release. You should measure field data too, and understand how representative your Lighthouse runs are.
Put it this way, code linters are often for identifying code best practices rather than necessarily spotting issues that will cause performance bugs. But that doesn't mean there is no value in linters. I think of Lighthouse as a performance linting tool, rather than absolute measure of a performance score to hit.