top of page
Digital Shelf
It’s more of a personal collection—random things I come across, resources worth remembering, and thoughts I might want to come back to later. Just a place to keep track of it all.


Cypress Test Tags
Tags help organize and filter tests so you can run only what you need. Examples: smoke regression api auth critical mobile Unlike some frameworks, Cypress does not have built-in tagging. Instead, it recommends using the @cypress/grep plugin. Installing tag support Registering the plugin In cypress/support/e2e.js: Tagging tests Tag a suite Tag individual tests Running tests by tag Run only smoke tests: Run only auth tests: You can also filter by test titles using grep. NPM scr
Mar 211 min read


Cypress Sessions
One of the most useful features in larger Cypress test suites is cy.session(). It helps solve a common problem: repeating the same setup steps, especially logging in before each test. cy.session() lets Cypress save and reuse session data like cookies, localStorage, and sessionStorage. This means you don’t have to log in every time. Cypress can quickly restore the same browser state. It also works with Cypress test isolation and can reuse sessions across different spec files
Mar 212 min read


Docker + Cypress
Precondition Install Docker Desktop: https://www.docker.com/products/docker-desktop/ Example setup: Core Idea Image = instructions (what to install + what to run) Container = running version of image Flow: Cypress Docker images: https://github.com/cypress-io/cypress-docker-images Dockerfile .dockerignore package.json docker-compose.yml Commands (minimal reference) Build image Run container Using docker-compose (recommended) When to Rebuild Rebuild if you change: Dockerfile pa
Mar 181 min read


Cypress Reports
When Cypress tests run in headless mode (npx cypress run) , the default reporting is quite limited. You typically get: terminal output screenshots for failures videos (if enabled) While useful, this makes debugging difficult in larger test suites or CI pipelines because there is no clear HTML dashboard summarizing test results. To solve this, Cypress supports custom reporters . Official documentation: https://docs.cypress.io/app/tooling/reporters Why Use Custom Reporters Cus
Mar 102 min read


Data-Driven Testing in Cypress
Data-driven testing means running the same test multiple times with different input data . Instead of writing several almost identical tests, a single test can iterate through a dataset and validate different scenarios. This approach is especially useful for: form validation boundary testing error message verification repetitive input testing It reduces duplicated code and makes tests easier to maintain. Example Scenario – Username Validation In this example the Conduit appli
Mar 102 min read


Test Data in Cypress with Faker
Hard-coded test data works for small demos, but it quickly becomes a problem in real test suites. Using the same values repeatedly creates unrealistic scenarios and can cause conflicts when tests create or manipulate data. A better approach is to generate dynamic test data using a library like Faker . Why Hard-Coded Test Data Is a Problem Example of common hardcoded test data: "Test article" "John Doe" "Lorem ipsum" Problems with this approach: Tests always use the same valu
Mar 82 min read
bottom of page