{"id":19686469,"url":"https://github.com/qualityshepherd/cypress-example","last_synced_at":"2025-04-29T06:31:27.413Z","repository":{"id":45463693,"uuid":"117244818","full_name":"qualityshepherd/cypress-example","owner":"qualityshepherd","description":"Example e2e tests using Cypress","archived":false,"fork":false,"pushed_at":"2023-07-09T22:32:30.000Z","size":156,"stargazers_count":6,"open_issues_count":1,"forks_count":13,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-05T13:51:24.593Z","etag":null,"topics":["automation","cypress","cypress-io","e2e","tests"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/qualityshepherd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":"support/commands.js","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-12T13:34:36.000Z","updated_at":"2023-12-19T19:01:03.000Z","dependencies_parsed_at":"2024-11-11T18:43:04.613Z","dependency_job_id":null,"html_url":"https://github.com/qualityshepherd/cypress-example","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qualityshepherd%2Fcypress-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qualityshepherd%2Fcypress-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qualityshepherd%2Fcypress-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qualityshepherd%2Fcypress-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qualityshepherd","download_url":"https://codeload.github.com/qualityshepherd/cypress-example/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251450656,"owners_count":21591407,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","cypress","cypress-io","e2e","tests"],"created_at":"2024-11-11T18:28:42.621Z","updated_at":"2025-04-29T06:31:25.577Z","avatar_url":"https://github.com/qualityshepherd.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![E2E Tests](https://github.com/qualityshepherd/cypress-example/actions/workflows/e2e.yaml/badge.svg)](https://github.com/qualityshepherd/cypress-example/actions/workflows/e2e.yaml)\n\n# Cypress Example\n\nAn example project using the automation tool, [Cypress](https://www.cypress.io/). These tests are quite silly but are intended to provide examples of common actions you may need in your testing. I've included:\n- page objects\n- various ways of running the tests (via npm scripts)\n\n## Rant\nCypress is an _agressively_ opinionated framework... some of these opinions are at best, misguided :) YMMV. I know it's very popular... but honestly, **I would avoid Cypress if you can**. My issues with Cypress include:\n\n1. it hates on page objects\n1. it has a versioning problem: TONS of misinformation about how to use it on the internets\n1. it cannot handle new windows/tabs\n1. it can't handle multiple domains in one test file\n1. it requires learning a proprietary framework rather than learning to code\n1. it teaches some bad testing habits (eg. expects in page objects)\n1. it thinks conditionals in tests are ok; they're not\n1. it's slow\n1. anything it doesn't handle the docs will tell you _YOU SHOULDN'T WANT TO DO THAT_ (eg. test if an element exists)\n1. I have yet to see _anyone_ use it well\n\nI _strongly_ suggest using [Testcafe](https://github.com/qualityshepherd/testcafe-example) or [Playwright](https://playwright.dev/) instead.\n\n## Requires\n1. [node](https://nodejs.org/en/)\n1. [git](https://git-scm.com/)\n\n## Setup\n1. clone: `git@github.com:qualityshepherd/cypress-example.git`\n1. install: `npm i`\n\n## Run Them Tests\n1. all'vum: `npm test`\n1. just homePage: `npm run cy:home`\n1. headless: `npm run cy:headless`\n\n---\n\n![Test Run Gif](https://qualityshepherd.com/screencasts/cypress_testrun.gif)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqualityshepherd%2Fcypress-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqualityshepherd%2Fcypress-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqualityshepherd%2Fcypress-example/lists"}