You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This project consists of an automated test suite developed in **Python** using the **Pytest** framework. The primary objective is to validate the business rules and contracts of the *Users*, *Products*, *Login*, and *Carts* endpoints of the public API [**ServeRest**](https://compassuol.serverest.dev/?lang=pt-BR#/), ensuring data integrity, system resilience, and response accuracy.
10
+
This project consists of an automated test suite developed in **Python** using the **Pytest** framework. The primary objective is to validate the business rules and contracts of the *Users*, *Products*, *Login* and *Carts* endpoints of the public API [**ServeRest**](https://compassuol.serverest.dev/?lang=pt-BR#/), ensuring data integrity, system resilience and response accuracy.
11
11
12
12
---
13
13
14
14
## Architectural Evolution and Refactoring (Week 04)
15
15
16
16
During the [fourth week](https://github.com/codebyfernanda/bootcamp-QA-2026-desafios/tree/main/semana_004) of the Bootcamp, the project architecture was refactored following Quality Engineering best practices:
17
17
18
-
***Domain-Driven Modularization:** Reorganized test files into clear modules based on context (Login, Users, Products, and Carts), moving away from monolithic structures.
18
+
***Domain-Driven Modularization:** Reorganized test files into clear modules based on context (Login, Users, Products and Carts), moving away from monolithic structures.
19
19
***Adoption of the AAA Pattern (Arrange, Act, Assert):** Removed redundant `try/except` blocks that cluttered the code. The structure now strictly follows the *Arrange, Act, and Assert* flow, making tests focused and readable.
20
20
***Base URL Centralization:** Created dedicated fixtures to manage the API base URL, eliminating string repetition across tests and facilitating seamless transitions between different testing environments.
21
21
***State Management (Setup/Teardown):** Implemented automated database cleanup routines (`teardown`), ensuring complete independence between test scenarios.
@@ -28,11 +28,11 @@ During the [fourth week](https://github.com/codebyfernanda/bootcamp-QA-2026-desa
28
28
<details>
29
29
<summary><b>1. Objective and Strategy</b></summary>
30
30
31
-
***Objective:** Ensure functional quality, contract stability, and reliability.
31
+
***Objective:** Ensure functional quality, contract stability and reliability.
32
32
***Strategy:** Automation of functional and contract tests at the API layer.
33
-
***Tech Stack:** Python 3.13.x, Pytest, Requests, and JSONSchema.
34
-
***Scope:**`/login`, `/usuarios`, `/produtos`, and `/carrinhos` endpoints.
35
-
***Out of Scope:** Load, stress, and performance testing.
33
+
***Tech Stack:** Python 3.13.x, Pytest, Requests and JSONSchema.
34
+
***Scope:**`/login`, `/usuarios`, `/produtos` and `/carrinhos` endpoints.
35
+
***Out of Scope:** Load, stress and performance testing.
36
36
</details>
37
37
38
38
<details>
@@ -41,7 +41,7 @@ During the [fourth week](https://github.com/codebyfernanda/bootcamp-QA-2026-desa
41
41
***`test_login.py`**: Authentication suite (success and failure scenarios).
42
42
***`test_usuarios.py`**: Full CRUD operations with email validation.
43
43
***`test_produtos.py`**: Product management and admin token validation.
44
-
***`test_carrinhos.py`**: Purchase management, stock constraints, and order cancellation.
44
+
***`test_carrinhos.py`**: Purchase management, stock constraints and order cancellation.
45
45
</details>
46
46
47
47
<details>
@@ -113,7 +113,7 @@ To ensure the robustness and quality of the API, the automation strategy was bas
113
113
114
114
The calculation was performed using the **Operator Coverage** formula:
115
115
116
-
Since the API exposes 11 distinct operations across the four resources (Login, Users, Products, and Carts) and all flows have been properly automated, the test suite has achieved **100% operation coverage**.
116
+
Since the API exposes 11 distinct operations across the four resources (Login, Users, Products and Carts) and all flows have been properly automated, the test suite has achieved **100% operation coverage**.
117
117
118
118
### Quality Beyond Coverage
119
119
@@ -149,7 +149,7 @@ Beyond achieving 100% operator coverage, the suite focuses on the quality of val
149
149
150
150
## Conclusion
151
151
152
-
This challenge was a deep dive into what it truly means to be a Quality Engineer in practice. As our instructor Jacques Schmitz mentioned in our 1st Workshop, **"QA acts throughout the entire cycle, acting as a facilitator for the team—influencing design, assisting with observability, and managing how to handle the volume of data generated by the business."** I realized that when we structure well-organized tests, our mission is not just to find bugs, but to prevent problems from arising while simultaneously reducing business risks.
152
+
This challenge was a deep dive into what it truly means to be a Quality Engineer in practice. As our instructor Jacques Schmitz mentioned in our 1st Workshop, **"QA acts throughout the entire cycle, acting as a facilitator for the team—influencing design, assisting with observability and managing how to handle the volume of data generated by the business."** I realized that when we structure well-organized tests, our mission is not just to find bugs, but to prevent problems from arising while simultaneously reducing business risks.
153
153
154
154
Far beyond simply automating manual tasks, we are building a safety layer "to have peace of mind and security regarding changes" and to "ensure that changes do not break other aspects of the code," as stated by Professor José Correia, Software Quality Specialist, in the *Início Rápido em Teste e QA* course available on Udemy (which we studied during the first week of the Bootcamp).
155
155
@@ -215,7 +215,7 @@ pytest -v
215
215
216
216
This project was developed by **Fernanda Bastos dos Santos**[(@codebyfernanda)](https://github.com/codebyfernanda), a student of **Analysis and Systems Development** at Mackenzie, during the **BOOTCAMP | AWS AI FDE DRIVEN QUALITY ENGINEERING** hosted by Compass UOL in partnership with [AI/R Company](https://aircompany.ai/).
217
217
218
-
I would like to express my sincere gratitude to Squad 2 for their engagement, knowledge sharing, and support throughout our bootcamp journey. A special thanks goes to my colleagues [Renan Pacheco](https://github.com/Renanpacheco) and [Vitor Kunicki](https://github.com/vitto2099) — your patience, availability, and guidance were fundamental in helping me overcome the challenges of this delivery.
218
+
I would like to express my sincere gratitude to Squad 2 for their engagement, knowledge sharing and support throughout our bootcamp journey. A special thanks goes to my colleagues [Renan Pacheco](https://github.com/Renanpacheco) and [Vitor Kunicki](https://github.com/vitto2099) — your patience, availability and guidance were fundamental in helping me overcome the challenges of this delivery.
219
219
220
220
I would also like to take this opportunity to thank my instructors, Amanda Almeida and [Jacques Schmitz](https://github.com/juniorschmitz), for their continuous support and readiness to help with technical content during our training, as well as our Scrum Master, Leticia Souza, for her daily guidance and sensitivity toward our journey in the program. Thank you so much! :)
0 commit comments