Developers and testers play key roles in the creation of software applications in the Software Development Life Cycle (SDLC). In the early days of software development, developers were only responsible for building code, and testers were only responsible for testing the quality of the software application after development. As a result, issues did not arise until the final stages of the SDLC during functional/end-to-end testing. These issues could be further compounded by the potential complexity of the issue, and the project could be delayed and/or go over budget. The introduction of unit testinghelped identify issues in earlier stages, during development instead of at the end, and afforded developers time to address and resolve issues.