Po pierwsze, jeśli masz już duży system, który nie ma żadnych testów jednostkowych, a zamierzasz dodać trochę, to pozwól, że udzielę ogólnej porady.
Od utrzymania systemu i pracy z nim, prawdopodobnie już znasz obszary systemu, które wydają się być buggiest, które często się zmieniają i które nie zmieniają się bardzo często. Jeśli tego nie zrobisz, zawsze możesz przejrzeć dzienniki kontroli źródła (używasz kontroli źródła, prawda?), Aby dowiedzieć się, gdzie skupia się większość poprawek i zmian. Skoncentruj swoje wysiłki testowe na tych klasach i metodach. Istnieje ogólna zasada o nazwie 80/20 reguła, która ma zastosowanie do całego szeregu rzeczy, przy czym jest to jedna z nich.
Mówi, że przeciętnie, powinieneś być w stanie pokryć 80 procent spraw wykroczenia, wykonując zaledwie 20% pracy. Oznacza to, że pisząc testy dla zaledwie 20% kodu, możesz prawdopodobnie złapać 80% błędów i regresji. To dlatego, że większość delikatnego kodu, zwykle zmieniony kod i najgorszy obrażający kod stanowi zaledwie 20% bazy kodu. W rzeczywistości może być jeszcze mniej.
Powinieneś użyć junit, aby to zrobić i powinieneś użyć czegoś w stylu JMock lub innej szyderczej biblioteki, aby upewnić się, że testujesz w izolacji. Do testów systemowych/testów integracyjnych, czyli testowania rzeczy podczas ich wspólnej pracy, mogę polecić FitNesse. W przeszłości miałem z tym duże doświadczenie.Umożliwia napisanie testu w przeglądarce internetowej przy użyciu prostych układów tabelarycznych, w których można łatwo zdefiniować swoje dane wejściowe i oczekiwane wyniki. Wszystko, co musisz zrobić, to napisać małą klasę wsparcia zwaną Urządzeniem, która zajmuje się tworzeniem komponentów.
+1 dla odniesienia do książki Piórka. –
Zamówiłem książkę właśnie teraz. Dzięki. – Lily