This repository hosts the automated test suites for multiple client websites. Each site is isolated in its own directory with its own configuration, secrets, and schedule.
| Client | Folder | Description |
|---|---|---|
| I Got Mind (https://igotmind.ca/) |
/igotmind |
Authenticated + public flows |
| DigiBot App (https://digibotapp.com) |
/digibotapp |
Public visual regression |
| Naturally Beautiful (https://naturallybeautifulhaircare.com) |
/naturallybeautiful |
Smoke + full-page visual regression |
| Inventor Market (https://www.inventor.market) |
/inventormarket |
Smoke + full-page visual regression |
| Microlocs (https://microlocs.com) |
/microlocs |
Smoke + full-page visual regression |
| Microloc Directory (https://microlocdirectory.com) |
/microlocsdirectory |
Smoke + full-page visual regression |
| Techwink (https://techwink.net) |
/techwink |
Smoke + full-page visual regression |
| The Fourth Twenty https://thefourthtwenty.ca |
/thefourthtwenty |
Smoke + full-page visual regression |
To trigger a test run immediately (e.g., after a fix or deployment):
- Go to the Actions Tab.
- On the left sidebar, select the specific workflow (e.g., "DigiBot: Automation").
- Click the Run workflow button on the right side.
- Select the
mainbranch and click Run workflow.
- Open the email notification you received (Subject: "QA Report...").
- Click the drive link in the email and download the report.
- Extract the zip and open
index.htmlto view the full interactive dashboard.
The automation runs automatically based on the schedules defined in .github/workflows/.
| Client | Schedule (IST) |
|---|---|
| I Got Mind | Mondays @ 9:00 AM IST |
| DigiBot App | Tuesdays @ 9:00 AM IST |
| The Fourth Twenty | Tuesdays @ 9:00 AM IST |
| Naturally Beautiful | Wednesdays @ 9:00 AM IST |
| Inventor Market | Thursdays @ 9:00 AM IST |
| Microlocs | Fridays @ 9:00 AM IST |
| Microloc Directory | Fridays @ 9:00 AM IST |
| Techwink | Saturdays @ 9:00 AM IST |
- Open the workflow file (e.g.,
.github/workflows/naturallybeautiful.yml). - Find the
scheduleblock near the top:
schedule:
- cron: "30 3 * * 3"- Update the numbers using Crontab.guru.
- Important: GitHub uses UTC Time. You must convert your desired IST time to UTC.
- Formula: IST - 5 hours 30 minutes = UTC.
- Example: 9:00 AM IST = 3:30 AM UTC.
QA reports are uploaded to a corporate Google Drive using OAuth authentication. This ensures centralized ownership, long-term access, and independence from individual user accounts.
The following secrets must be configured at the repository level:
| Secret Name | Description |
|---|---|
GDRIVE_CLIENT_ID |
OAuth Client ID (Google Cloud project) |
GDRIVE_CLIENT_SECRET |
OAuth Client Secret |
GDRIVE_REFRESH_TOKEN |
OAuth refresh token |
Secrets are managed under:
GitHub → Repository → Settings → Secrets and variables → Actions
- Open Google Cloud Console
- Create a new project (example:
qa-automation-reports) - Enable Google Drive API
- User type: Internal (recommended for corporate environments)
- App name:
QA Automation - OAuth scope:https://www.googleapis.com/auth/drive
- Publish the consent screen
- Go to APIs & Services → Credentials
- Create OAuth Client ID
- Application type: Desktop App
- Save the generated Client ID and Client Secret
Generate an OAuth refresh token using the created client.
- This token allows GitHub Actions to upload files non-interactively
- The token is long-lived and does not expire unless revoked
- Store it as
GDRIVE_REFRESH_TOKEN
QA reports stored in the corporate Google Drive are cleaned up automatically based on a configurable retention period.
-
Go to GitHub → Repository → Settings
-
Open Secrets and variables → Actions
-
Locate the secret:
DRIVE_REPORT_RETENTION_DAYS -
Click Edit
-
Enter the desired number of days (integer only)
| Requirement | Value |
|---|---|
| Keep reports for 7 days | 7 |
| Keep reports for 30 days | 30 |
| Keep reports for 60 days | 60 |
- Save the secret
📌 The new value will be applied automatically on the next scheduled cleanup run.
If immediate cleanup is required:
- Go to the Actions tab
- Select “Cleanup old Drive reports”
- Click Run workflow
- Enter a custom value for Retention Days
- Run the workflow
This overrides the secret for that run only.