{"id":26628149,"url":"https://github.com/briso10-dev/software-testing","last_synced_at":"2026-02-19T11:30:46.489Z","repository":{"id":283376118,"uuid":"791363201","full_name":"Briso10-dev/Software-Testing","owner":"Briso10-dev","description":"A Complete guide towards learning and practicing software testing of RestApis","archived":false,"fork":false,"pushed_at":"2025-03-19T22:36:49.000Z","size":41686,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-10T14:12:45.121Z","etag":null,"topics":["mongodb","nodejs","prisma","rest-api","software-testing","supertest","typescript","vite","vitest"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/Briso10-dev.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-04-24T15:26:58.000Z","updated_at":"2025-03-19T22:36:52.000Z","dependencies_parsed_at":"2025-03-19T23:38:46.740Z","dependency_job_id":null,"html_url":"https://github.com/Briso10-dev/Software-Testing","commit_stats":null,"previous_names":["briso10-dev/software-testing"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Briso10-dev/Software-Testing","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Briso10-dev%2FSoftware-Testing","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Briso10-dev%2FSoftware-Testing/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Briso10-dev%2FSoftware-Testing/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Briso10-dev%2FSoftware-Testing/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Briso10-dev","download_url":"https://codeload.github.com/Briso10-dev/Software-Testing/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Briso10-dev%2FSoftware-Testing/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29611044,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-19T10:52:55.328Z","status":"ssl_error","status_checked_at":"2026-02-19T10:52:26.323Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["mongodb","nodejs","prisma","rest-api","software-testing","supertest","typescript","vite","vitest"],"created_at":"2025-03-24T12:28:10.780Z","updated_at":"2026-02-19T11:30:46.464Z","avatar_url":"https://github.com/Briso10-dev.png","language":"TypeScript","readme":"# REST API User Management with Integration Testing\n\nA demonstration project showcasing REST API development with comprehensive integration testing, built using modern TypeScript and Express.js. This project serves as a practical example of implementing software testing practices in a REST API context.\n\n## 🚀 Features\n\n- User management REST API endpoints\n- Integration testing setup with Vitest\n- MongoDB database integration via Prisma\n- Docker support for containerization\n- TypeScript for type-safe development\n- Express.js for robust API development\n\n## 🛠️ Tech Stack\n\n| Category | Technologies |\n|----------|-------------|\n| Backend | ![TypeScript](https://img.shields.io/badge/TypeScript-007ACC?style=flat-square\u0026logo=typescript\u0026logoColor=white) ![Node.js](https://img.shields.io/badge/Node.js-339933?style=flat-square\u0026logo=nodedotjs\u0026logoColor=white) ![Express.js](https://img.shields.io/badge/Express.js-000000?style=flat-square\u0026logo=express\u0026logoColor=white) |\n| Database | ![MongoDB](https://img.shields.io/badge/MongoDB-47A248?style=flat-square\u0026logo=mongodb\u0026logoColor=white) ![Prisma](https://img.shields.io/badge/Prisma-2D3748?style=flat-square\u0026logo=prisma\u0026logoColor=white) |\n| Testing | ![Vitest](https://img.shields.io/badge/Vitest-6E9F18?style=flat-square\u0026logo=vitest\u0026logoColor=white) ![SuperTest](https://img.shields.io/badge/SuperTest-009688?style=flat-square\u0026logo=testing-library\u0026logoColor=white) |\n| DevOps | ![Docker](https://img.shields.io/badge/Docker-2496ED?style=flat-square\u0026logo=docker\u0026logoColor=white) |\n\n## 📦 Installation\n\n1. Clone the repository:\n```bash\ngit clone \u003cyour-repo-url\u003e\ncd Software-Testing\n```\n\n2. Install dependencies:\n```bash\nyarn install\n```\n\n3. Set up environment variables:\n```bash\ncp .env.example .env\n# Edit .env with your configuration\n```\n\n4. Generate Prisma client:\n```bash\nyarn generate\n```\n\n5. Push database schema:\n```bash\nyarn push\n```\n\n## 🏃‍♂️ Running the Application\n\n### Development Mode\n```bash\nyarn dev\n```\n\n### Production Mode\n```bash\nyarn build\nyarn start\n```\n\n### Running Tests\n```bash\n# Run tests\nyarn test\n\n# Run tests with coverage\nyarn test:coverage\n```\n\n### Using Docker\n```bash\n# Build and run with Docker Compose\ndocker-compose up --build\n```\n\n## 🧪 Testing Strategy\n\nThis project implements integration testing to ensure the reliability of the API endpoints. The tests cover:\n\n- User management operations (CRUD)\n- Request validation\n- Error handling\n- Database interactions\n\n## 📝 API Documentation\n\n### Endpoints\n\n- `GET /users` - Retrieve all users\n- `POST /users` - Create a new user\n- `GET /users/:id` - Retrieve a specific user\n- `PUT /users/:id` - Update a user\n- `DELETE /users/:id` - Delete a user\n\nDetailed API documentation can be found in the [API Documentation](./docs/API.md) file.\n\n## 📄 License\n\nThis project is licensed under the MIT License. See the LICENSE file for details.\n\n## 👤 Author\n\n**Seraphin Brice Koua** ([@Briso10-dev](https://github.com/Briso10-dev))\n\n## 🤝 Contributing\n\nContributions, issues, and feature requests are welcome! Feel free to check the [issues page](https://github.com/yourusername/your-repo/issues).\n\n## ⭐️ Show your support\n\nGive a ⭐️ if this project helped you!\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbriso10-dev%2Fsoftware-testing","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbriso10-dev%2Fsoftware-testing","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbriso10-dev%2Fsoftware-testing/lists"}