Skip to content

Latest commit

 

History

History
28 lines (15 loc) · 2.01 KB

README.md

File metadata and controls

28 lines (15 loc) · 2.01 KB

Time to interactive tracker

Phase Maintainability

NOTE: This tool is still in testing.

Purpose

The purpose of this tool is to check how long an application takes before it can be interacted with. Another definition would be the time it takes to completely load.

How do I use it?

All you need to do is install the GitHub application found here: Coming soon!

You also need to be using a deployment implementation on GitHub. (ex. Heroku's Review apps).

Work flow

The tool is designed as GitHub application that subscribes to deployment events (https://developer.github.com/v3/repos/deployments/) on pull request branches. The specific use case at CDS targets Heroku's Review apps, which are created on every push to a branch.

Once the application receives the event, it extracts the URL for the application, loads the URL using Lighthouse, and and returns the time it takes for the URL to become interactive. The result is then saved in a database and if there are previous results for that branch, a delta is calculated.

Implementation

The tool is implemented as a Google Cloud function. Any merges to master are automatically deployed after testing passes using Google's Cloud build service (check cloudbuild.yaml for more information). Lighthouse is used to determin the time to interaction for a given URL. Google's Firestore is used a database to track values so that deltas can be calculated.

Questions?

Please contact us through any of the multiple ways listed on our website.