Hacker News new | ask | show | jobs
by nd 1830 days ago
I actually think if you squint testing is part of observability, except it gives you signal during the development phase. And observability as a concept is fundamental to a reliable system.
1 comments

I see where you’re going, but I think if we start defining tests as part of observability then we’ll water that term down to meaninglessness.
If there's a bug and no test suite to try to reproduce it, how do you know you actually fixed it?
I define observability as the tools I use to check on the behavior of my system in ad-how ways in production. This is quite different from tests, which are designed to exercise specific behavior in a fixed environment. Both are used towards the goal of software quality, but they’re different.
I dunno. Working on projects with no tests for me always feels like a complete crapshoot. Any change could have broken some implicit assumption in some module you didn't know depended on it. Even worse is if it's a dynamic language and you don't even have a compiler to do the basic checks.

For things like reproducing bugs, in particular, functional tests plus a debugger have been indispensable in seeing how the code actually behaves.

Sure, production monitoring is nice. But it really only tells you about high level problems, and there are entire classes of bugs, eg. silently corrupted data, which you'll never see there.

You’re arguing against a more extreme version of the point I’m making. I’m not arguing for no tests, I’m arguing that uncle bob over states their capabilities by a lot.