Skip to content

husseinizaid/ECE444-F2023-Lab5

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 

Repository files navigation

ECE444-F2023-Lab5

Test Cases to group project:

I wrote three tests that check if a user has added all of the information required to create an event. That a user can update an event and that a user can delete an event. My name in the comments in Zaid Husseini.

What are the pros and cons of TDD?

Pros: Test-Driven Development (TDD) is a software development methodology that emphasizes writing tests before the actual code. The first advantage or "pro" as detailed in the recording "Introduction to Test-Driven Development" is that TDD instills automation in the testing process, ensuring rigorous test coverage from the inception of a project. By advocating for the drafting of tests before code, TDD brings developers to a common understanding before the coding phase begins. This promotes cohesive team collaboration.

In addition, TDD offers a heightened degree of confidence when deploying software and harmonizes seamlessly with AGILE methods. This enhances iterative development cycles. Another benefit is the ease of code refactoring; with a suite of tests in place, developers can make changes with assurance that existing functionality remains intact.

Cons: However, there are also drawbacks to keep in mind. While TDD can strengthen and improve the development process, it is quite time-intensive at the beginning. Especially for those who are not used to doing it. The act of writing tests before actual development might feel counterintuitive, creating a potential barrier to people trying it out. Overemphasis on TDD might also lead to excessive unit tests, which at times can overshadow the need for crucial integration or system tests.

Lastly, incomplete or poorly written tests can give a false sense of security, leading developers to believe their code is robust when vulnerabilities remain. THis kind of hinders a developers creativity when coding because if a different team is in charge of these tests and the developer is simply coding to pass them they might not think of other errors not covered by the tests while they code since the tests have already been created on the onset. There could be unforseen edge cases that are not accounted for.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published