dasha-moskv / ECE444-F2023-Lab5

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ECE444-F2023-Lab5

Name: Daria (Dasha) Moskvitina
This repository is a a modified version of https://github.com/mjhea0/flaskr-tdd

What are the pros and cons of TDD?

Test Driven Development (TDD) is a software development approach where unit tests are written before the development of the actual code.

There are several benefits to this approach. Firstly, by writing tests first, many issues and bugs are identified and addressed early in the development process, which leads to fewer defects and reduced debugging time in the later stages of development. Secondly, TDD frequently contributes to a more modular and maintainable codebase, thereby enhancing the software architecture and making future maintenance and updates more manageable. Thirdly, TDD often results in developers gaining a clearer understanding of the requirements as they must determine the expected behavior and functionality of the code they are about to write.

However, there are also several downsides to TDD. Firstly, TDD introduces additional overhead in the maintenance of the system, as tests must be rewritten or amended if the system's requirements change. Secondly, TDD can slow down the development process, as writing tests first requires additional time and effort. Thirdly, TDD may necessitate a significant shift in mindset and approach for developers accustomed to traditional development methodologies, potentially causing resistance or a learning curve within the development team.

Adding Test Cases to Group Project

I added test cases to check that our error handling works as expected. See: https://github.com/ECE444-2023Fall/project-1-web-application-design-group4-3d3g/blob/main/tests/test_app.py#L85-L101

About


Languages

Language:Python 50.0%Language:HTML 37.9%Language:CSS 6.9%Language:JavaScript 5.3%