I stumbled upon this article after reviewing a pull request, where someone was unit testing the abstract base class. I'm of the opinion that base classes should not be tested. We don't want to be testing the architecture of an application, we want to be testing the behaviour. The author sums this up nicely with this point:
For tests, though, it shouldn’t matter whether the classes under test share the domain logic or duplicate it. Tests should view all production code as a black box, and approach verifying it with a blank slate. Otherwise, such tests will start couple to the code’s implementation details.
I'm confused why people are voting down an article about AI in an AI community, discussing small language models, which are much better in terms of energy consumption and the environment.