I think the point is something like "don't unit test the system as a whole". Black box testing is great and most definitely should be used, but should be kept very high level and unit tests should be kept very small and granular.
The author has several other articles on the subject that I have not read yet, so I'm not sure if I've got a full understanding of his point yet: http://blog.thecodewhisperer.com/blog/categories/integrated-...
The author's idea of branch coverage seems mixed up. I've worked on avionics at the strictest safety level. We had to test every branch and every combination of conditions for the branch, but every combination of branches up and down the code path was not a thing.
So, what are we supposed to do? Not test? Not test "thoroughly"? Write 1084x as much test code as production code[1]? He provides no alternative.
---
[1] http://www.sqlite.org/testing.html