( persicsb | 2016. 08. 26., p – 10:14 )

Nem, nem az Util tesztelhetősége miatt hiba, hanem amiatt, mert azt nem tudod tesztelni, aki az Utilt felhasználja, addig, amíg az Utilnak nincs egy helyes implementációja- ugyanis közvetlenül hívja, nem injektált dependencyn keresztül.
Viszont arra várni egy osztály tesztelésekor, hogy a függőségeinek van helyes implementációja, sérti a unittesztelést. Nem tudsz teszt kódot írni addig, amíg a Unit implementációja el nem készül. WTF?!
Írsz egy MyClasst, és másra kell várnod (az Utilt fejlesztőre), hogy MyClasst tesztelni tudd? Őrültség.

Ha az Util static, akkor nem tudod tesztelni azt az interakciót, amikor az Utilt a hívó kód meghívja, miszerint helyes paraméterekkel hívja meg.
Tegyük fel, hogy a metódusod X-ből Y-t állít elő. A függvény a futása során meghívja az Utilt. Hogyan teszteled, hogy megfelelő paraméterekkel hívta meg az Utilt? Az Util valójában egy collaboratora a metódusodnak, a metódus vagy class API-ja sehol nem árulkodik azonban erről, ez egy implicit függőség. Ami rossz.

Beinjektálni könnyen nem tudsz egy mock Util példányt, classloadert kéne ahhoz módosítgatni.