Wpis z mikrobloga

Boże wydaje mi się, że im dłużej się uczę tym mniej umiem. Piszę w django testy, a raczej próbuję, bo już niczego nie jestem pewien. Mam endpointa i chcę przetestować tworzenie obiektu i napisałem takie coś https://pastebin.com/VPZjwEMg I nie wiem, czy mam dopisać assertEqual na sprawdzenie, czy taki obiekt został utworzony? Zakładam, że będzie tworzyć to nadpisana metoda create, więc chyba trzeba to przetestować xd Gdzieś chyba czytałem, żeby nie testować funkcji frameworka. Prawda to?
#naukaprogramowania #django #python
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@KiedysBedeProgramista: nie będziesz tutaj testował metody create z django, w końcu nie wywołujesz jej ręcznie ( zakładam, że końcówka /api/events/ nie tworzy usera.
(swoją drogą, poczytaj o factoriach do testów).

Wysyłasz zestaw danych na odpowiednią końcówkę potem, nie wiem co w niej jest ale zakładam, że z danych z requesta tworzysz instancje modelu XYZ.

W assert tego testu możesz
  • Odpowiedz
@KiedysBedeProgramista: django generalnie ma duży narzut architektoniczny samo w sobie.
Nie bawiąc się w łączenie czystej architektury z django, to, co django daje out of the box, wymusza na Tobie takie testy jak ten powyższy, post request na określoną końcówkę, no i sprawdzasz czy np powstał obiekt z tymi danymi.

W praktyce łączysz testy kilku warstw:
1) ta od requestów, która jest zaszyta w django
2) logiki biznesowej(jeżeli spełnione są określone warunki, powinien zostać
  • Odpowiedz
@michael93pl: dzięki za rady i sorry, że jeszcze głowę zawracam, ale ciekawi mnie różnica między token auth i session auth, czy do niezbyt skomplikowanych aplikacji, nieprzechowujących wrażliwych danych, nada się sam token?
  • Odpowiedz