Close

Notes on Test Naming

There are only two hard problems in programming: cache invalidation, naming things, and off-by-one errors. One of the tricky things about talking and writing about the various types of automated tests is simply naming them. Terms like “Unit” and “Integration” test are heavily overloaded, and the distinction between categories of test is not always trivial…

Tackling Tech Debt

“Technical Debt” can sometimes be a slippery term in the software industry. If you talk about it long enough, it usually becomes apparent that the participants in the conversation have very different things in mind when they are referring to “tech debt” which impedes having a productive discussion about how to deal with it. In…

Unit Tests

Unit Tests are tests written with the most narrow scope possible. Definitionally, they test the smallest unit of our software possible, usually just a single method within a class. Due to the fact that each test will have some context that must be set up, followed by an action whose result we wish to assert,…