Testy integracyjne - jak powinny wygladac?

Odpowiedz Nowy wątek
2018-10-25 20:12
Mały Młot
0

Cześć,

Mam metodę która coś pobiera z innego serwisy poprzez REST, przetwarza dane i zapisuje do bazy danych. Chcialbym teraz sprawdzic czy po wykonaniu tej metody w bazie zostaly zapisane poprawne dane.

public class HelloWorld
{

  Service serviceOne;
  ServiceREST restService;
  Repository repoOne;
  Repository repoTwo;

  public Something doSomething(Parameter p){

    Object object = restService.get(p.getId());

    OtherStaff os= serviceOne.get(object);

    Something smthg= doComplexStaff(os);

    repoOne.save(object);
    repoTwo.save(os);

    return smthg;

  }
}

Jak powiniem ten kod przetestować?

Do metody doComplexStaff() sa napisanie testy jednostkowe.

  1. Czy napisać test ktory sprawdza czy po wykonaniu metody doSomething() zostaną zapisane do bazy obiekty object, os itd.? Serwis do odpytywania restow zmockowac albo postawić środowisko testowe.
  2. Czy nie testować tej metody wcale, tylko napisać testy do serwisu odpytujacego rest, repozytoriow, dao etc. ?

Pozostało 580 znaków

2018-10-26 07:34
._.
0

Nie ma prostej recepty. Napisz dokładnie, co robi każdy element i jaką ma implementacje. Ten przykład jest "dziwny".

Pozostało 580 znaków

2018-10-27 02:17
1

Niczego nie mockować, po prostu wywołać metodę, a potem sprawdzić, czy oczekiwane dane wylądowały w bazie.


"HUMAN BEINGS MAKE LIFE SO INTERESTING. DO YOU KNOW, THAT IN A UNIVERSE SO FULL OF WONDERS, THEY HAVE MANAGED TO INVENT BOREDOM."
A dlaczego akurat to, co jest w bazie?. Ja bym wolał sprawdzić to, co zwraca funkcja. :-| - ._. 2018-10-27 07:53
Ja zrozumiałem, że efektem działania jest pojawienie się danych w bazie, nie doczytałem nic o istnieniu funkcji zwracającej te dane. Jeśli ona istnieje, to pewnie, że lepiej sprawdzić, co ona zwraca. A jeśli jej nie ma, to trzeba sięgnąć do bazy. - somekind 2018-10-27 14:41

Pozostało 580 znaków

2018-10-27 03:13
0

Baza danych w pamięci (np. H2) to Twój klucz do sukcesu :)


Nie pomagam przez PM. Pytania zadaje się na forum.
O ile potencjalny false-positive to sukces. - somekind 2018-10-27 04:20

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0