Das erste echte Softwareunternehmen, bei dem ich gearbeitet habe, war das Unit Testing (NUnit). Ich weiß nicht, dass wir damals echte Stickler dafür waren - ich habe keine Ahnung, wie unsere Codeabdeckung war, und ich habe die meisten Unit-Tests geschrieben. Seitdem bin ich auf einige Unternehmen gestoßen, die viele Tests durchführen, aber es handelt sich um Stuhlprüfungen: Sie sind darauf angewiesen, dass eine Person dort ist, haben eine geringe Wiederholbarkeit und eine geringe Wahrscheinlichkeit, Fehler zu erkennen. Die andere Einstellung ist: Es war etwas, mit dem sie "in der Zukunft" beginnen wollten; im Grunde, wenn Geld vom Himmel fällt.
Ich vermisse Unit-Tests - das macht das Leben einfach einfacher. Aber ich stelle fest, dass Unit-Tests bei der Suche nach einem neuen Job entweder etwas sind, mit dem Unternehmen in Zukunft "loslegen" möchten, oder etwas, das sie überhaupt nicht tun (ähm, es gibt es schon eine Weile jetzt!). Ich würde sagen, dass 60-75% der Jobanforderungen, die ich mir in den letzten 2 Jahren angesehen habe, überhaupt keine Unit-Tests aufgeführt haben. Ich kann mir nur ein oder zwei vorstellen, die Erfahrung mit Unit-Tests als Voraussetzung hatten (für eine mittlere Entwicklerposition).
Die Frage ist also, was fehlt ? Ich denke, es macht die Leute produktiver, aber das ist erst, nachdem man eine solide Zeit damit verbracht hat, es tatsächlich zu tun. Gibt es keine guten Studien zu den Kosteneinsparungen bei Unit-Tests? Ist es die Art von Unternehmen, die ich betrachte?
Bearbeiten: Obwohl der Titel ein bisschen Teufelsanwalt ist, betrachte ich mich als Befürworter von Unit-Tests.