cst 438: week 3
This week, I learned how to bridge the gap between building isolated components and managing a complex multi-developer system in our labs this week. I explored how system testing basically provides a final layer of defense by using Selenium to automate the browser and verify that our React frontend correctly handles end-to-end workflows with the Spring Boot API. I spent a lot of time implementing Git branching strategies, which highlighted that the best part of using Git is its ability to maintain a history and audit log where everyone (even contributors) have a full copy of the repo. While Git is excellent at tracking changes and providing an audit trail through commits and pull requests, I realized its primary limitation is that it only performs text merges. This means that even if a merge is technically successful without conflicts, it cannot detect logical errors or breaking changes where two independent code updates are technically correct syntax wise but functionally not wor...