Ich erinnere mich an das Sprichwort, dass ich mir keine Sorgen um das Scheunentor machen soll, wenn das Pferd bereits durchgebrannt ist.
Die Realität ist, dass es wirklich keine kostengünstige Möglichkeit gibt, eine gute Testabdeckung für ein Altsystem zu erhalten, schon gar nicht in einem kurzen Zeitraum. Wie MattNz bereits erwähnte, wird dies ein sehr zeitaufwendiger und letztendlich extrem kostspieliger Prozess sein. Mein Bauch sagt mir, dass Sie, wenn Sie versuchen, das Management zu beeindrucken, wahrscheinlich einen neuen Wartungs-Alptraum schaffen werden, weil Sie versuchen, zu schnell zu zeigen, ohne die Anforderungen zu verstehen, auf die Sie testen möchten.
Wenn Sie den Code erst einmal geschrieben haben, ist es realistisch gesehen fast zu spät, um die Tests effektiv zu schreiben, ohne das Risiko, dass Sie etwas Wichtiges verpassen. Auf der anderen Seite könnte man sagen, dass einige Tests besser sind als keine Tests, aber wenn dies der Fall ist, müssen die Tests selbst zeigen, dass sie dem gesamten System einen Mehrwert verleihen.
Mein Vorschlag wäre, sich die Schlüsselbereiche anzusehen, in denen Sie das Gefühl haben, dass etwas "kaputt" ist. Damit meine ich, es könnte furchtbar ineffizienter Code sein, oder Sie können nachweisen, dass die Wartung bisher sehr kostspielig war. Dokumentieren Sie die Probleme und verwenden Sie diese als Ausgangspunkt, um eine Teststufe einzuführen, die Ihnen hilft, das System zu verbessern, ohne einen massiven Neuentwicklungsaufwand in Kauf zu nehmen. Hier geht es darum, dass Sie nicht mit den Tests aufholen, sondern Tests einführen, die Sie bei der Lösung bestimmter Probleme unterstützen. Überprüfen Sie nach einiger Zeit, ob Sie die vorherigen Kosten für die Wartung dieses Codeabschnitts und den aktuellen Aufwand für die von Ihnen mit den unterstützenden Tests angewendeten Fixes messen und unterscheiden können.
Denken Sie daran, dass das Management mehr an den Kosten / Nutzen interessiert ist und wie sich dies direkt auf die Kunden und letztendlich auf das Budget auswirkt. Sie sind nie daran interessiert, etwas zu tun, nur weil es das Beste ist, wenn Sie nicht nachweisen können, dass es ihnen einen Nutzen bringt, der für sie von Interesse ist. Wenn Sie nachweisen können, dass Sie das System verbessern und eine gute Testabdeckung für die derzeit von Ihnen ausgeführte Arbeit erhalten, ist dies für das Management eher eine effiziente Anwendung Ihrer Bemühungen. Dies könnte es Ihnen möglicherweise ermöglichen, zu argumentieren, dass Sie Ihre Bemühungen auf andere Schlüsselbereiche ausdehnen, ohne entweder ein vollständiges Einfrieren der Produktentwicklung zu fordern, oder noch schlimmer, es ist fast unmöglich, sich für ein Umschreiben auszusprechen!