Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dutraa45/qa-mastery
User management project focused on QA with Cypress, Node.js/Express (Jest), MongoDB (Docker), and GitHub Actions for testing and code quality.
https://github.com/dutraa45/qa-mastery
cicd eslint nodejs qa reactjs security
Last synced: about 1 month ago
JSON representation
User management project focused on QA with Cypress, Node.js/Express (Jest), MongoDB (Docker), and GitHub Actions for testing and code quality.
- Host: GitHub
- URL: https://github.com/dutraa45/qa-mastery
- Owner: DutraA45
- Created: 2024-12-06T17:31:18.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-12-06T19:03:58.000Z (about 1 month ago)
- Last Synced: 2024-12-06T20:11:16.509Z (about 1 month ago)
- Topics: cicd, eslint, nodejs, qa, reactjs, security
- Language: JavaScript
- Homepage:
- Size: 649 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# QA Mastery
## Description
User management project focused on QA with Cypress, Node.js/Express (Jest), MongoDB (Docker), and GitHub Actions for testing and code quality.Project developed as a study in the QA (Quality Assurance) subject of the Full-stack PUC Postgraduate Program and exported from the "all-studies" repository due to the use of Github Actions and its continuous integration.
---
## Technologies Used
### Front-end
- React
- Cypress (for testing)### Back-end
- Node.js
- Express
- Jest (unit and integration tests)### Database
- MongoDB (Docker)### QA and CI/CD
- Cypress
- Jest
- ESLint
- GitHub Actions---
## Features
- **User management (CRUD):** Create, view, update, and delete users.
- **Comprehensive QA focus:**
- Front-end automated tests with Cypress.
- Back-end unit, integration, and system tests with Jest.
- Security and code quality analysis.
- Continuous integration with GitHub Actions.---
## How to Run the Project
### Prerequisites
Ensure you have the following installed:
- Node.js (>= 16.x)
- Docker and Docker Compose### Steps
1. **Set up the environment:**
- Create a `.env` file with the necessary environment variables. Use `.env.example` as a reference.2. **Start MongoDB in Docker:**
- Start your MongoDB container using the following command:
```bash
docker run --name mongodb -d -p 27017:27017 mongo3. Install dependencies:
```bash
cd user-api
npm install
``````bash
cd ../user-admin
npm install
```4. Run the application:
- backend and front-end
```bash
run start5. Access the application in your browser:
- Front-end: http://localhost:3000
- API: http://localhost:5000---
## Testing
### Front-end Testing (Cypress)
Run automated front-end tests:
```bash
npm run cypress### Back-end Testing (Jest)
Run unit and integration tests:
```bash
npm test---
## CI/CD and Code Quality
This repository uses GitHub Actions for:
- Automated test pipelines.
- Security and code quality analysis with ESLint and other tools.---
## Contributing
Feel free to open issues and submit pull requests. Contributions are always welcome!---
## License
This project is licensed under the MIT License.