{"id":29673629,"url":"https://github.com/stefruseva88/js-app-e2e-tests","last_synced_at":"2026-02-07T14:31:03.593Z","repository":{"id":253784445,"uuid":"844088122","full_name":"StefRuseva88/js-app-e2e-tests","owner":"StefRuseva88","description":" End-to-End testing of Single Page JS App with Playwright and QUnit","archived":false,"fork":false,"pushed_at":"2025-01-07T10:53:54.000Z","size":1042,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-07T11:40:57.044Z","etag":null,"topics":["e2e-testing","playwright-javascript","qunit-tests","ui-testing"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/StefRuseva88.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"publiccode":null,"codemeta":null}},"created_at":"2024-08-18T10:52:59.000Z","updated_at":"2025-01-07T10:54:04.000Z","dependencies_parsed_at":"2024-08-27T15:58:42.830Z","dependency_job_id":"63cc689b-40c5-4fe6-8b44-aac3bc3d3e2a","html_url":"https://github.com/StefRuseva88/js-app-e2e-tests","commit_stats":null,"previous_names":["stefruseva88/spa-e2e-tests","stefruseva88/js-app-e2e-tests"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/StefRuseva88/js-app-e2e-tests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StefRuseva88%2Fjs-app-e2e-tests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StefRuseva88%2Fjs-app-e2e-tests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StefRuseva88%2Fjs-app-e2e-tests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StefRuseva88%2Fjs-app-e2e-tests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/StefRuseva88","download_url":"https://codeload.github.com/StefRuseva88/js-app-e2e-tests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StefRuseva88%2Fjs-app-e2e-tests/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266580298,"owners_count":23951193,"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","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"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":["e2e-testing","playwright-javascript","qunit-tests","ui-testing"],"created_at":"2025-07-22T22:04:10.491Z","updated_at":"2026-02-07T14:31:03.556Z","avatar_url":"https://github.com/StefRuseva88.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Automated e2e Testing of Single Page App with Playwright and QUnit\n\n[![JavaScript](https://img.shields.io/badge/Made%20with-JavaScript-F7DF1E.svg)](https://developer.mozilla.org/en-US/docs/Web/JavaScript)\n[![QUnit](https://img.shields.io/badge/tested%20with-QUnit-9C4CB4.svg)](https://qunitjs.com/)\n[![Playwright](https://img.shields.io/badge/tested%20with-Playwright-6E40C9.svg)](https://playwright.dev/)\n\n## This is a Project for Front-End Technologies May 2024 Course @ SoftUni\n---\n\n## 🔄 Project Summary\n\n- Configure the project for testing.\n- Develop integration tests.\n- Execute and verify test results.\n- Assess different functionalities within the SPA.\n\n## 🔨 Setup Guide\n\n### 1. Prepare the Project for Testing\n\n1. **Open Project:**\n   - Launch the SPA project in Visual Studio Code.\n\n2. **Organize Testing Files**\n   - Create a `tests` folder.\n   - Within `tests`, create `QUnit_tests` and `Playwright_tests` subfolders.\n\n3. **Set Up Test Files:**\n   - In `QUnit_tests`, create `test.html`.\n   - Add `integration.test.js` in the same folder.\n\n4. **Install \"Live Server\" Extension in VS Code for smooth test execution.**\n   \n5. **Install Playwright:**\n   \n   - Add Playwright to your project:\n  \n   ```\n   npm install @playwright/test --save-dev\n   ```\n   \n   - Install required browsers:\n  \n   ```\n   npx playwright install\n   ```\n\n7. **Configure Playwright:**\n   - In your project’s root directory, create a `playwright.config.js` file and set up your testing environment.\n\n7. **Start the App Server:**\n   - Ensure your server is active. Update `package.json` if necessary to include a \"server\" script and start it with:\n\n   ```\n   npm run server\n   ```\n\n## ⚛️ Executing Tests\n\n1. **Running QUnit Tests:**\n   \n   - Open `test.html:` and right-click on `test.html` then select \"Open with Live Server\" to launch it in your browser. You should see the test interface displayed.\n\n2. **Running Playwright Tests:**\n\n   - In the `Playwright_tests` folder, create a new file, e.g., `e2e.test.js`, and write your Playwright tests.\n   - Execute the tests using one of the following commands:\n          \n   ```\n   npx playwright test/npm run test\n   ```\n\n   - The results will be displayed in the terminal. You can also generate a report by running:\n   \n   ```\n   npx playwright show-report\n   ```\n\n## ✔️ Functional Testing\n\n### 1. **Game Functionality Tests**\n   - Retrieve All Games: Test the API endpoint to fetch all games and validate the response.\n   - Create Game: Test the creation of a new game and ensure it returns the correct response.\n   - Get Game by ID: Confirm that fetching a game by its ID functions properly.\n   - Edit Game: Test the update of an existing game and verify the changes.\n   - Delete Game: Ensure the deletion of a game works as expected.\n     \n### 2. **Comment Functionality Tests**\n   - Test a New Game with No Comments: Ensure that new games initially have no comments.\n   - Post a New Comment: Test adding a new comment and verify the response.\n   - Comments for a Specific Game: Check that comments for a specific game are correctly retrieved.\n\n## ✔️ License\nThis project is licensed under the [MIT License](LICENSE). See the [LICENSE](LICENSE) file for details.\n\n## 📧 Contact\nFor any questions or suggestions, please open an issue in the repository.\n\n---\n### Happy Testing! 🚀\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstefruseva88%2Fjs-app-e2e-tests","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstefruseva88%2Fjs-app-e2e-tests","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstefruseva88%2Fjs-app-e2e-tests/lists"}