Closed Infotelecom closed 5 years ago
Testy integracyjne zawsze (w przeciwieństwie do dobrze napisanych testów jednostkowych) stanowią pewnego rodzaju kompromis i nasze doświadczenia wykazały, że konfiguracja podstawowa bazy demo jest bardzo dobrym punktem wyjściowym. Większość danych w tej bazie się nie zmienia, natomiast jeżeli dane wejściowe mają wpływ na wynik testu, należy to uwzględnić. Mamy tutaj kilka opcji:
Jeżeli chodzi o okres obrachunkowy to większość testów księgowych wymaga jego istnienia i dodawanie go za każdym razem byłoby nieoptymalne czasowo. Radzimy sobie z jego zmianą na dwa sposoby. Jeżeli test wymaga specyficznego okresu, to go dodajemy. Jeżeli nie, to pobieramy ten aktualny i uwzględniamy jego rok w weryfikacji wyników testu.
Nie jestem pewien czy to właściwe do tego miejsce. Jeśli mówimy, że testy powinny zapewniać niezmienność wejścia, to czy baza nunit_default powinna zawierać dane demonstracyjne? Okres obrachunkowy jest co roku inny - ten sam test puszczony za rok może nie zadziałać. A co będzie, jak zmienią się nazwiska pracowników? Może lepiej byłoby te dane dodać jako plik dbinit, do wykorzystania, jeśli ktoś ich potrzebuje, a bazę generować pustą?