Jakie przypadki testowe możemy napisać używając DUnit?

Używam Delphi 7.

Jestem nowy w Dunicie, mam wątpliwości, jakie przypadki testowe mogę napisać używając Dunita i jak (to jest dla mnie bardzo ważne).

Czy możliwe jest pisanie przypadków testowych dla konkretnego zdarzenia kliknięcia przycisku? Ponieważ w takim przypadku może istnieć duży zestaw kodu, w którym więcej jednostek jest wywoływanych z odpowiednimi procedurami lub funkcjami związanymi z bazą danych. W takim przypadku, jakie jest najlepsze podejście do pisania przypadków testowych i w jaki sposób? (Jeśli to możliwe, przykład lub referal byłby dla mnie bardzo pomocny).

Ponieważ w przykładowym projekcie DUnit nie możemy napisać całych zestawów kodu aplikacji, ponieważ w niektórych przypadkach może być wymagana inna forma.

Więc mam wątpliwości co do takich sytuacji jak pisanie przypadków testowych, a ogólnie także jakie przypadki testowe możemy pisać używając DUnit i co ważne jak?

Author: Andriy M, 2012-11-23

2 answers

To powinien być komentarz, ale piszę go jako odpowiedź, bo nie zmieści się w komentarzu.

Proponuję zrobić dwie rzeczy:

 16
Author: Jan Doggen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:02:21

Naucz się testów jednostkowych pisząc proste testy. Proste testy są dla klasy, którą budujesz, która może być testowana jednostkowo. Klasa testowalna jednostkowo nie jest kompletną aplikacją Delphi GUI.

Spróbuj to jako pierwsze ćwiczenie:

  1. Stwórz klasę, która może liczyć liczbę całkowitą od 1 do MAXINT na listę liczb pierwszych, które po pomnożeniu razem dają liczbę pierwotną. Wyniki należy posortować najmniejszy czynnik do największego. Jeżeli wielkość tej listy wyników wynosi 1, to wynik jest pierwszy. Liczby zerowe i ujemne oznaczają wyjątki.

  2. Zamiast robić wszystko za jednym zamachem, spróbuj" czerwony/zielony " test driven development. Oznacza to, że wystarczy napisać wystarczająco dużo kodu, aby pierwszy test nie powiódł się. (Napisz pierwszy test, napisz tyle kodu, że klasa, którą budujesz kompiluje i uruchamia, ale nie zda testu. Teraz zrób pierwszy test. Nie rozwiązuj całych liczb faktoringowych, po prostu zdaj pierwszy test.)

  3. Powtórz proces pisania nieudane testy, a następnie kod, który musisz przekazać, dopóki nie dostarczysz (z testami), że twoja klasa może teraz liczyć dowolną wartość całkowitą od 1 do MAXINT.

Jeśli chodzi o" Testowanie jednostek roboczych w istniejących starszych aplikacjach", powinieneś zapoznać się z książką"Working Effectively with Legacy Code". Nie mogę dać ci żadnego krótkiego wprowadzenia, jak zacząć dodawać testy jednostkowe do wielkiej kuli błota (Twój kod przycisku OnClick).

 4
Author: Warren P,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-24 03:20:31