Testid - kuuseke1/workoutapp GitHub Wiki

Funktsionaalsed nõuded:

  • POST päring aadressile /workouts peab salvestama workouti andmebaasi. Protseduur: käivitada rakendus, saata POST päring aadressile /workouts JSON kujul sisuga, kus on erinevate harjutuste objektid ja timestamp, nt { "exercises": [{"name": "pull-up", "repetitions": 10}, {"name": "push-up", "repetitions": 20}, "timestamp": 12345346346 }. Oodatud tulemus: server peab selle objekti andmebaasi salvestama ja sama objekti tagastama lisatud ID-ga.
  • GET päring aadressile /workouts peab tagastama kõik andmebaasi salvestatud workoutid. Protseduur: käivitada rakendus, saata GET päring ilma sisuta aadressile /workouts. Oodatud tulemus: server tagastab kõik lisatud workoutid.
  • DELETE päring aadressile /workouts/{id} peab kustutama vastava ID-ga workouti andmebaasist. Protseduur: käivitada rakendus, saata DELETE päring aadressile /workouts/{id}, kus {id} on kustutatava workouti id. Oodatud tulemus: Server kustutab andmebaasist vastava id-ga workouti ning suunab tagasi viimasele aadressile.
  • GET päring aadressile /workouts/{id} workouti id-ga tagastab vastava workouti. Protseduur: käivitada rakendus, saata GET päring aadressile /workouts/{id}, kus {id} on soovitava workouti id. Oodatav tulemus: server tagastab id-le vastava workouti JSON kujul.
  • POST päring aadressile /login valiidse infoga logib kasutaja rakendusse sisse.. Protseduur: käivitada rakendus, saata POST päring aadressile /login JSON kujul sisuga, kus on kasutaja kasutajanimi ja parool, nt {username: "user", password: "password", roles: "USER"}. Oodatav tulemus: server loeb kasutaja sisselogituks ja suunab ta edasi /home leheküljele, kust edasi ta saab külastada kõiki tema rollile vastavaid lehekülgi.

Mittefunktsionaalsed nõuded:

  • Server peab vastama mistahes requestile vähem kui 5 sekundi jooksul. Protseduur: käivitada rakendus, saata ükskõik milline päring aadressile /workouts. Oodatav tulemus: Serveril ei lähe vastamiseks aega rohkem kui 5 sekundit.
  • Kasutaja leiab üles lehte külastades koha, kust ta sisse logida saab. Protseduur: käivitada rakendus, minna selle index lehele. Oodatav tulemus: kasutaja leiab üles "jätka" nupu võrdlemisi kiiresti (vähem kui 5 sekundit)
  • Kasutaja saab aru sisselogimise protseduurist. Protseduur: käivitada rakendus, minna browseris /login lehele. Oodatav tulemus: kasutaja saab aru, mida ta kuhu sisestama peab (kasutajanimi ja parool) ja leiab üles login nupu.
  • Kasutaja saab aru treeningu lisamise protseduurist. Protseduur: Käivitada rakendus, minna browseris home lehele. Oodatav tulemus: kasutaja leiab üles, mis kohas saab ta lisada treeningut oma päevikusse ja klikib sellele lingile. Sellel lehel suudab ta valida sobiva harjutuse ja selle tegemise korrad ning vajutada nuppu "Add".
  • Kasutaja saab rakendusest välja logida. Protseduur: käivitada rakendus, logida browseri kaudu sisse. Oodatav tulemus: Kasutaja leiab üles logout nupu ja vajutab sellele, mille peale rakendus viib lehe tagasi sisselogimise eelsesse seisundisse.