88""Yb 888888    db    8888b.  Yb  dP   888888  dP"Yb    888888 888888 .dP"Y8 888888 
88__dP 88__     dPYb    8I  Yb  YbdP      88   dP   Yb     88   88__   `Ybo."   88   
88"Yb  88""    dP__Yb   8I  dY   8P       88   Yb   dP     88   88""   o.`Y8b   88   
88  Yb 888888 dP""""Yb 8888Y"   dP        88    YbodP      88   888888 8bodP'   88                                                                                                  
            
Software Quality Assurance ★ Test Automation ★ Manual Testing
Current Date & Time (Pacific) ★
------------------------------------------------------------------------
About ℹ️
Welcome to my testing ecosystem! This page serves as a space for
exploration, experimentation, and continuous learning. Each update
reflects the progression of an iterative approach. There is a lot of
hands-on tinkering going on in here. Things are constantly evolving
and improving with each new experiment and discovery. Learn more
about my testing skills and QA philosophy.

Curious about the design choice of this page? It was inspired by
and a nod to the charm of 90s websites. I appreciate the creativity
and individuality that characterized many websites from that era. I
wanted to bring back the simpler times of the internet and add a bit
of nostalgia and handmade style to it. Imagine there is background
midi music 🎵 playing for the full experience.
------------------------------------------------------------------------
Ready to Test (QA) GitHub Profile 👤
https://github.com/readytotest
------------------------------------------------------------------------
UI Test Automation with Playwright
Spec: indexHtm.spec.ts | 📸 look1 | 📸 look2
Spec: indexHtmFunction.spec.ts
Spec: weatherAlerts.spec.ts
Page Object (Class): indexHtmPage.ts
Page Object (Function): indexHtmPageFunction.ts
Page Object: weatherAlertPage.ts
Navigation: navigation.ts
Test Data: testData.json
Feedback Widget Test 🎥 watch (in sloMo so you can follow along)
Playwright Config Local: playwright.config.ts
Playwright Config CI: playwright.actions.config.ts
CI/CD: playwright-mysite.yml | Actions workflow | 📸 look1 | 📸 look2
This GitHub Actions YAML file sets up a workflow to run Playwright
in a GitHub Runner environment when a pull request or push occurs.
It checks out two repositories, installs dependencies, starts a local
web server, executes the tests, and uploads the results.
------------------------------------------------------------------------
Start Local Server 🏭
Bash: start-server.sh | 📸 look1 | 📸 look2
Node: server.js
------------------------------------------------------------------------
UI Test Automation with Cypress
The Orange Demo site is popular among those learning test automation,
but the high number of users means people are constantly stomping on
each other's data, causing tests to fail. I recommend using another
site to avoid these issues and ensure more reliable results.

Spec: orangeDemoSmoke.cy.js View run in Mochawesome report 👇
Spec: sauceDemoSmoke.cy.js View run in Cypress Cloud 👇
Spec: sauceDemoLoginOnlyTest.cy.js View run in Cypress Cloud 👇
Spec: lambdaTestDemoRegistration.cy.js | 🎥 watch | 📸 look
Spec: readyToTestSmoke.cy.js | 🎥 watch | 📸 look
Spec: scratchPad.cy.js (experimental) | 🎥 watch | 📸 look
------------------------------------------------------------------------
API Test Automation with Cypress
Spec: catApiTest.cy.js | 📸 look1 | 📸 look2
------------------------------------------------------------------------
Automated Visual Testing with Cypress 🖼️
Spec: checkGitHubPage.cy.js | 📸 image diff| 📸 slider | 📸 mirror
Spec: checkMusicalNoteElement.cy.js | 📸 image diff | 📸 server
------------------------------------------------------------------------
Mochawesome Report 📝
Cypress doesn't have built-in test reports so I used this
Orange demo: sample script results and video
------------------------------------------------------------------------
Cypress Cloud 📊
I set this up primarily to explore parallel test execution,
but there is also test reporting and a centralized dashboard.
Sauce demo: two sample scripts ran in parallel results and video
------------------------------------------------------------------------
GitHub Actions 🎬
These are some YAML files I was tinkering with early on. I have
a Cypress test that runs against this site on a cron schedule.
There's also an integration with Cypress Cloud in the sauce YAML,
and a few manually triggered Cypress tests for some random sites.
cypress-mysite.yml | orange.yml | sauce.yml | lambdaTest.yml
View workflows
------------------------------------------------------------------------
Postman API Testing 📬
My profile and public workspace/collections
------------------------------------------------------------------------
National Weather Service API ⛈️
View weather alerts on my page
------------------------------------------------------------------------
The weather and earthquake data on this page are part of my
exploration into API interactions, and I wanted some dynamic,
live updates to make the site more interesting. While it might
seem unrelated to QA testing, it reflects my curiosity and
hands-on learning beyond typical QA responsibilities. I chose
these APIs because they don't require authentication, avoiding
exposure of API keys in the source code.
------------------------------------------------------------------------
Most Recent Earthquake via 📳 USGS Realtime GeoJSON Feed
Source File: earthQuake.js
Place:
Magnitude:
Latitude:
Longitude:
Depth: km
Time: Pacific
URL: 📍
------------------------------------------------------------------------
Code Quality and Site Monitoring ⚠️
Driven by curiosity, I decided to tinker with SonarCloud and
Sentry to explore their functionalities and understand how
they can enhance my projects.



------------------------------------------------------------------------
Slack Integration 🪛
Slack integration with Sentry 📸 look and Cypress Cloud 📸 look
------------------------------------------------------------------------
Tinkering with the HTML <video></video> tag 🚘📹
I've been exploring HTML and CSS to integrate multimedia into
my personal site. Here's a video taken with my dashcam, originally
captured in 2160P (front) and 1080p (rear) as separate video files.
I used iMovie to split the screen and HandBrake to convert the .TS
files to .MP4 and also to reduce the file size for viewing on the web.
* The rear camera is darker because of window tint.
* On desktop, hover your mouse over over the video for full opacity.
* On mobile, just tap on or outside of the video to toggle opacity.
------------------------------------------------------------------------
Click here for a surprise YouTube video handpicked and played
randomly from a playlist array in randomMusicYt.js. 🎸🎸🎸🎸🎸
------------------------------------------------------------------------
Set frequency of JS alert with localStorage alertPopUp.js 🛎️
------------------------------------------------------------------------
View my curated list of helpful tools and resources 🛠️
------------------------------------------------------------------------
tinker.js JavaScript playground 🎡
------------------------------------------------------------------------
Repository Last Commit 💾
-----
Source File: repoLastCommitInfo.js
------------------------------------------------------------------------
Click here to see what the above section looks like when the API
rate limit is reached. The primary rate limit for unauthenticated
requests from an originating IP to the GitHub API is 60 requests
per hour.
------------------------------------------------------------------------

Feel free to use and explore the scripts. This site is intended for educational purposes, not only for my learning journey, but yours too! Thanks for stopping by! You are visitor:
Top