Trochę kontekstu: Wcześniej musiałem zaktualizować kod SQL, który dostarczył inny mój kolega, a ponieważ jest to dość duży skrypt, jest on przechowywany jako osobny plik (który jest następnie odczytywany i uruchamiany w czasie wykonywania). Robiąc to, przez przypadek przywróciłem dwa błędy, które mieliśmy kilka miesięcy temu, a mianowicie:
- Z jakiegokolwiek powodu plik ASCII został zakodowany w UTF-16 (kolega przesłał mi plik, który mógł go spowodować).
- W skrypcie brakowało
SET
instrukcji początkowych (wymaganych z powodu niektórych sterowników podczas produkcji, ale nie podczas czystej instalacji lokalnie).
Po debugowaniu tego przez około godzinę (ponownie) postanowiłem napisać kilka testów jednostkowych, aby upewnić się, że to się nigdy nie powtórzy (i podaj szybki sposób, aby to naprawić w komunikacie asercji, aby zapewnić łatwą poprawkę dla przyszłych programistów).
Kiedy jednak pchnąłem ten kod, podszedł do mnie inny kolega (który jest również naszym szefem zespołu) i powiedział, że nie powinienem robić tych rzeczy ponownie, ponieważ:
„Te rzeczy nie należą do testów jednostkowych”
„Testy jednostkowe powinny być używane tylko do sprawdzania przepływu kodu”
Jestem teraz dość skonfliktowany, ponieważ nadal uważam, że to, co robię, nie jest złe, ponieważ ten błąd nie zostanie ponownie wprowadzony w przyszłości, jednak ten kolega pracuje jako starszy i pod koniec dnia może zdecydować, co spędzamy czas na. Co powinienem zrobić? Czy mylę się, że robię to w ten sposób? Czy jest to uważane za złą praktykę?