{"id":22589112,"url":"https://github.com/rajatt95/tutorial_yt_rajat_designpattern_pom_cypress_js","last_synced_at":"2026-05-06T04:03:55.841Z","repository":{"id":221901327,"uuid":"719209043","full_name":"rajatt95/Tutorial_YT_Rajat_DesignPattern_POM_Cypress_JS","owner":"rajatt95","description":"This repository contains a Tutorial for Page Object Model (POM) design pattern implementation using Cypress and Javascript for automated testing of applications.","archived":false,"fork":false,"pushed_at":"2023-11-18T04:07:34.000Z","size":44,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-28T17:49:54.882Z","etag":null,"topics":["chrome","cypress","edge","electron","firefox","javascript","nodejs","page-object-model","vscode"],"latest_commit_sha":null,"homepage":"https://www.youtube.com/@rajatt95","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/rajatt95.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":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-11-15T17:27:52.000Z","updated_at":"2024-02-10T21:12:31.000Z","dependencies_parsed_at":"2024-02-10T23:23:27.877Z","dependency_job_id":"159aa884-b5f2-4019-98a0-f00b8039fbab","html_url":"https://github.com/rajatt95/Tutorial_YT_Rajat_DesignPattern_POM_Cypress_JS","commit_stats":null,"previous_names":["rajatt95/tutorial_yt_rajat_designpattern_pom_cypress_js"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rajatt95/Tutorial_YT_Rajat_DesignPattern_POM_Cypress_JS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rajatt95%2FTutorial_YT_Rajat_DesignPattern_POM_Cypress_JS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rajatt95%2FTutorial_YT_Rajat_DesignPattern_POM_Cypress_JS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rajatt95%2FTutorial_YT_Rajat_DesignPattern_POM_Cypress_JS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rajatt95%2FTutorial_YT_Rajat_DesignPattern_POM_Cypress_JS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rajatt95","download_url":"https://codeload.github.com/rajatt95/Tutorial_YT_Rajat_DesignPattern_POM_Cypress_JS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rajatt95%2FTutorial_YT_Rajat_DesignPattern_POM_Cypress_JS/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32677933,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-06T02:33:58.958Z","status":"ssl_error","status_checked_at":"2026-05-06T02:33:39.611Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["chrome","cypress","edge","electron","firefox","javascript","nodejs","page-object-model","vscode"],"created_at":"2024-12-08T08:12:18.760Z","updated_at":"2026-05-06T04:03:55.786Z","avatar_url":"https://github.com/rajatt95.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--\n    #/**\n    # * @author Rajat Verma\n    # * Email: rajatvermaa95@gmail.com\n    # * GitHub Profile: https://github.com/rajatt95\n    # * GitHub Page: https://rajatt95.github.io/\n    # * LinkedIn: https://www.linkedin.com/in/rajatt95/\n    # * Topmate: https://topmate.io/rajatt95\n    # * Telegram: https://t.me/rajatt95\n    # * Instagram: https://www.instagram.com/rajattvermaa95/\n    # * YouTube: https://www.youtube.com/@rajatt95\n    # * WhatsApp Community: https://chat.whatsapp.com/DVRP0ViD0YwELUKF2XMJHy\n    # * WhatsApp Channel: https://whatsapp.com/channel/0029Va9XXMhJ93waOU5Xer3r\n    # */\n    #/***************************************************/\n--\u003e \n---\n# 💻 Tutorial | Page Object Model (POM) \n\n[![Cypress](https://img.shields.io/badge/Cypress-17202C?style=for-the-badge\u0026logo=cypress\u0026logoColor=white)](https://www.cypress.io/) [![JavaScript](https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge\u0026logo=javascript\u0026logoColor=black)](https://js.org/index.html)\n\n[![VS Code](https://img.shields.io/badge/VS_Code-007ACC?style=for-the-badge\u0026logo=visual-studio-code\u0026logoColor=white)](https://code.visualstudio.com/)\n[![Page Object Model](https://img.shields.io/badge/Page_Object_Model-4285F4?style=for-the-badge\u0026logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA5klEQVR42mJ8/vz8PwMxgAO4BMZcA5xggnIKCAkw4IACZpMHwBwD6EIAOMmQFQBzF8HlACMwMFAHMRgD8GVMH8CZAAAAAElFTkSuQmCC)](https://en.wikipedia.org/wiki/Page_Object_Model)\n\n\n## 📑 Table of Contents\n\n- [Introduction](#introduction)\n- [Video Tutorial](#video-tutorial)\n- [Prerequisites](#prerequisites)\n- [Getting Started](#getting-started)\n- [Running Tests](#running-tests)\n- [Project Structure](#project-structure)\n- [Configuration](#configuration)\n- [Other Projects](#other-projects)\n- [Technical Documents](#technical-documents)\n- [Contacts](#contacts)\n\n## 📖 Introduction\nThis repository contains a Tutorial for Page Object Model (POM) design pattern implementation using Cypress and Javascript for automated testing of applications.\n\n## 🎥 Video Tutorial\n\n\u003ca href=\"https://www.youtube.com/watch?v=xVlSLhB3VcA\"\u003e \u003cimg src=\"https://img.youtube.com/vi/xVlSLhB3VcA/0.jpg\" alt=\"Tutorial | POM | Selenium WebDriver + Java\" width=\"200\"\u003e \u003c/a\u003e\n\nClick on the image above to watch the tutorial.\n\n## 🛠️ Prerequisites\n\n- [![Node.js](https://img.shields.io/badge/Node.js-43853D?style=for-the-badge\u0026logo=node.js\u0026logoColor=white)](https://nodejs.org/) (v18.16.1 or higher recommended)\n- [![npm](https://img.shields.io/badge/npm-CB3837?style=for-the-badge\u0026logo=npm\u0026logoColor=white)](https://www.npmjs.com/) (v9.5.1 or higher recommended)\n\n## ▶️ Getting Started\n\n1. Clone the repository:\n\n   ```bash\n   git clone https://github.com/rajatt95/Tutorial_YT_Rajat_DesignPattern_POM_Cypress_JS.git\n   ```\n\n2. Navigate to the project directory:\n\n   ```bash\n   cd Tutorial_YT_Rajat_DesignPattern_POM_Cypress_JS\n   ```\n\n3. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n## 🚀 Running Tests\n\n- Open Cypress Test Runner:\n\n  ```bash\n  npm run cy:open\n  ```\n- Run tests in different browsers:\n\n  - [![Chrome](https://img.shields.io/badge/Chrome-4285F4?style=for-the-badge\u0026logo=google-chrome\u0026logoColor=white)](https://www.google.com/chrome/)\n[![Firefox](https://img.shields.io/badge/Firefox-FF7139?style=for-the-badge\u0026logo=firefox\u0026logoColor=white)](https://www.mozilla.org/firefox/)\n[![Edge](https://img.shields.io/badge/Edge-0078D7?style=for-the-badge\u0026logo=microsoft-edge\u0026logoColor=white)](https://www.microsoft.com/edge/)\n[![Electron](https://img.shields.io/badge/Electron-47848F?style=for-the-badge\u0026logo=electron\u0026logoColor=white)](https://www.electronjs.org/)\n  ```bash\n  npm run cy:tests:CHROME\n  ```\n  ```bash\n  npm run cy:tests:FIREFOX\n  ```\n  ```bash\n  npm run cy:tests:EDGE\n  ```\n  ```bash\n  npm run cy:tests:ELECTRON\n  ```\n\n- Run tests in different modes (Headless):\n  ```bash\n  npm run cy:tests:ELECTRON:HEADLESS\n  ```\n\n## 📁 Project Structure\n\nThe tests follow a modular and maintainable structure:\n\n```\n|-- cypress\n|     |-- e2e\n|          |-- Sauce_Demo\n|               |-- Login.cy.js\n|     |-- support\n|          |-- pages\n|               |-- components\n|                   |-- Header.js\n|                   |-- Footer.js\n|               |-- BasePage.js\n|               |-- LoginPage.js\n|               |-- ProductsPage.js\n|          |-- commands.js\n|          |-- e2e.js\n|-- .gitignore\n|-- cypress.config.js\n|-- package.json\n```\n- `cypress/e2e`: Contains the actual test files. You can organize your tests into subdirectories as needed. \n- `cypress/support`: Contains custom commands and global configuration.\n- `cypress/support/pages`: Contains the Page Object Model (POM) classes representing web pages and their elements.\n- `cypress/plugins`: Contains plugins used by Cypress.\n\n## ⚙️ Configuration\n\n- Modify `cypress.config.json` for Cypress configuration settings.\n- Customize `commands.js` and other files in `cypress/support` for reusable commands.\n\n## 🔭 Other Projects\n\n- [![Java](https://img.shields.io/badge/Java-007396?style=for-the-badge\u0026logo=java\u0026logoColor=white)](https://github.com/stars/rajatt95/lists/programming-language-java)  - \n  [![Selenium](https://img.shields.io/badge/Selenium-43B02A?style=for-the-badge\u0026logo=selenium\u0026logoColor=white)](https://github.com/stars/rajatt95/lists/selenium-automation-frameworks)\n  [![Appium](https://img.shields.io/badge/Appium-40C4FF?style=for-the-badge\u0026logo=appium\u0026logoColor=white)](https://github.com/stars/rajatt95/lists/appium-automation-frameworks)\n  [![Rest Assured](https://img.shields.io/badge/Rest%20Assured-5B47A5?style=for-the-badge\u0026logo=rest-assured\u0026logoColor=white)](https://github.com/stars/rajatt95/lists/restassured-automation-framework)\n\n- [![JavaScript](https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge\u0026logo=javascript\u0026logoColor=black)](https://github.com/stars/rajatt95/lists/programming-language-javascript) - \n[![Cypress](https://img.shields.io/badge/Cypress-17202C?style=for-the-badge\u0026logo=cypress\u0026logoColor=white)](https://github.com/stars/rajatt95/lists/cypress-automation-frameworks)\n[![Playwright](https://img.shields.io/badge/Playwright-34495E?style=for-the-badge\u0026logo=playwright\u0026logoColor=white)](https://github.com/stars/rajatt95/lists/playwright-automation-frameworks)\n\n- [![Python](https://img.shields.io/badge/Python-3776AB?style=for-the-badge\u0026logo=python\u0026logoColor=white)](https://github.com/stars/rajatt95/lists/programming-language-python) -\n  [![Requests](https://img.shields.io/badge/Requests-2CA5E0?style=for-the-badge\u0026logo=python\u0026logoColor=white)](https://github.com/stars/rajatt95/lists/requests-automation-framework)\n\n## 📄 Technical Documents\n- [![Google Drive](https://img.shields.io/badge/Google%20Drive-4285F4?style=for-the-badge\u0026logo=google-drive\u0026logoColor=white)](https://drive.google.com/drive/folders/1tne9pZjgWvfrS0l9tVHs6k1jnQHpTLoA?usp=sharing)\n- [![GitHub Repository](https://img.shields.io/badge/GitHub-100000?style=for-the-badge\u0026logo=github\u0026logoColor=white)](https://github.com/rajatt95/Documents)\n\n## 📧 Contacts\n\n- [![Email](https://img.shields.io/badge/Email-rajatvermaa95%40gmail.com-green)](mailto:rajatvermaa95@gmail.com)\n- [![GitHub Profile](https://img.shields.io/badge/GitHub-Profile-blue)](https://github.com/rajatt95)\n- [![GitHub Page](https://img.shields.io/badge/GitHub-Page-lightgrey)](https://rajatt95.github.io/)\n- [![LinkedIn](https://img.shields.io/badge/LinkedIn-Profile-blue)](https://www.linkedin.com/in/rajatt95)\n- [![Topmate](https://img.shields.io/badge/Topmate-Profile-red)](https://topmate.io/rajatt95)\n- [![Telegram](https://img.shields.io/badge/Telegram-Channel-blue)](https://t.me/rajatt95)\n- [![Instagram](https://img.shields.io/badge/Instagram-Profile-orange)](https://www.instagram.com/rajattvermaa95/)\n- [![YouTube](https://img.shields.io/badge/YouTube-Channel-red)](https://www.youtube.com/@rajatt95)\n- [![WhatsApp Community](https://img.shields.io/badge/WhatsApp-Community-brightgreen)](https://chat.whatsapp.com/LP20xMGvxnEL88GoB58bo1)\n- [![WhatsApp Channel](https://img.shields.io/badge/WhatsApp-Channel-brightgreen)](https://whatsapp.com/channel/0029Va9XXMhJ93waOU5Xer3r)\n\nFeel free to reach out if you have any questions, or suggestions, or just want to chat!\n\nThanks for visiting my GitHub profile! 😊\n\n\u003cp align=\"left\"\u003e \u003cimg src=\"https://komarev.com/ghpvc/?username=rajatt95\u0026label=Profile%20views\u0026color=0e75b6\u0026style=flat\" alt=\"rajatt95\" /\u003e \u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frajatt95%2Ftutorial_yt_rajat_designpattern_pom_cypress_js","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frajatt95%2Ftutorial_yt_rajat_designpattern_pom_cypress_js","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frajatt95%2Ftutorial_yt_rajat_designpattern_pom_cypress_js/lists"}