Unit testing is largely hated and ignored by developers. Many deem it a waste of time, arguing that writing code that tests code simply gets in the way of finishing projects. After all, if it works, it works right? Why write tests at the ‘unit’ level if the functionality will change anyways? Sure things like selenium and end to end testing provide ways to test your project, but why go beyond this and test individual units of code?.