Sadržaj se učitava...
mdi-home Početna mdi-account-multiple Djelatnici mdi-script Studiji mdi-layers Katedre mdi-calendar-clock Raspored sati FOI Nastava search apps mdi-login
Testiranje i kontinuirana integracija
Testing and Continuous Integration
2024/2025
3 ECTSa
Informacijske tehnologije i digitalizacija poslovanja 1.3 (ITDP)
Studijski centar Varaždin (ITDP 1.3)
Katedra za razvoj informacijskih sustava
RA
5. semestar
Osnovne informacijemdi-information-variant Izvođači nastavemdi-account-group Nastavni plan i programmdi-clipboard-text-outline Model praćenjamdi-human-male-board Ispitni rokovimdi-clipboard-check-outline Rasporedmdi-calendar-clock Konzultacijemdi-account-voice
Izvođenje kolegija
Studij Studijski program Semestar Obavezan
Informacijske tehnologije i digitalizacija poslovanja 1.3 (ITDP) Razvoj aplikacija 5 izborni
Cilj kolegija
Cilj predmeta je upoznati studenta sa osnovnim konceptima testiranja softvera, ulozi i poziciji aktivnosti testiranja u cjelokupnom procesu razvoja softvera, kao i različitim pristupima testiranju i korisnim alatima. S obzirom da je poseban fokus stavljen na automatizaciju testiranja, predmet obrađuje i temu kontinuirane integracije kao jednog od nužnih koraka u automatizaciji i ubrzavanju isporuke softvera.
Preduvjeti
Norma kolegija
Predavanja
15 sati
Vježbe u praktikumu
15 sati
Nastavnik Uloga na kolegiju Oblik nastave Tjedana Sati Grupa
Strahonja Vjeran Nositelj
Mijač Marko Suradnik Predavanja
Vježbe u praktikumu
15
15
1
1
0
0
Sadržaj predavanja
  • Osnove testiranja softvera (1+0 sat)
    Definicija i osnovni pojmovi u testiranju. Ciljevi testiranja. Pozicija i uloga aktivnosti testiranja u cjelokupnom procesu razvoja softvera. Uloga testera, programera i korisnika u testiranju. Vrste testiranja. Faze testiranja. Piramida testiranja.
  • Proces testiranja softvera (1+0 sat)
    Planiranje i zakazivanje testiranja. Dizajniranje testnih slučajeva. Provođenje testiranja. Dokumentiranje testiranja. Metrike u testiranju. Automatizacija testiranja.
  • Jedinično testiranje (2+2 sat)
    Definicija i svrha jediničnog testa. Elementi i karakteristike „dobrog“ jediničnog testa. Okviri za jedinično testiranje.
  • Osnovne tehnike jediničnog testiranja (3+4 sat)
    Refaktoriranje kôda u svrhu lakšeg testiranja. Uklanjanje ovisnosti korištenjem zamjena (engl. stub). Testiranje stanja vs. testiranje interakcije. Mock objekti. Izolacijski okviri (engl. Isolation frameworks).
  • Razvoj softvera temeljen na testovima (engl. Test-driven development - TDD) (2+4 sat)
    Testiranje u kontekstu agilnog razvoja. Ideja i provedba razvoja temeljenog na testiranju. Uzorci u TDD-u.
  • Integracijsko i funkcionalno testiranje (2+2 sat)
    Svrha integracijskog testiranja. Odabir scenarija. Integracijsko vs jedinično testiranje. Provjera ispravnosti cjelokupnog sustava kroz funkcionalno testiranje. Dostupni alati za automatiziranje.
  • Automatiziranje integracije programskog koda kroz proces kontinuirane integracije (4+3 sat)
    Automatiziranje i ubrzavanje procesa isporuke softvera vođenim skupom praksi i alata pod nazivom DevOps. Korištenje testova i sustava za verzioniranje kako bi se automatiziralo integriranje promjena na programskom kôdu napravljenih od strane različitih programera.
Sadržaj seminara/vježbi
Ishodi učenja kolegija
  • Razumjeti osnovne koncepte i ulogu testiranja u cjelokupnom procesu razvoja softvera.
  • Primijeniti odgovarajuće tehnike testiranja u različitim fazama testiranja.
  • Planirati, dizajnirati, provesti i dokumentirati testiranje.
  • Primijeniti odgovarajuće alate, biblioteke i okvire u svrhu jednostavnije implementacije, organizacije i izvođenja testova.
  • Pimijeniti pristup kontinuirane integracije kako bi automatizirali integraciju promjena na programskom kôdu.
Ishodi učenja programa
  • Identificirati i analizirati bitne interne i vanjske čimbenike koji utječu na odabir poslovnih prilika te na efikasnost poslovanja određenog poslovnog subjekta na domaćem i međunarodnom tržištu
  • Vrednovati rezultata poslovanja i interpretirati pokazatelje uspješnosti za potrebe upravljanja i donošenja poslovnih odluka
  • Primijeniti koncepte poduzetništva i poduzetnog djelovanja kako unutar postojećih poslovnih subjekata tako i u okviru pokretanja vlastitih poduzetničkih poduhvata
  • Predložiti i primijeniti metode komuniciranja s klijentima, korisnicima i kolegama usmenim i pismenim putem primjenom odgovarajuće terminologije, uključujući i sposobnost komunikacije o struci na stranom jeziku
  • Odabrati i koristiti informacijsko komunikacijske tehnologije u djelovanju poslovnih sustava
  • Odabrati odgovarajuću organizacijsku arhitekturu na razinama odlučivanja, upravljanja i izvođenja u organizacijama privatnog i javnog sektora primjenom Informacijsko komunikacijske tehnologije
  • Upravljati životnim ciklusom proizvoda, usluga, kao i životnim ciklusom razvoja informacijskog sustava
  • Predložiti i primijeniti temeljne metode razvoja informacijskih sustava u području modeliranja i izgradnje jednostavnih programskih rješenja
  • Predložiti i primijeniti metode razvoja programske potpore za jednostavne organizacijske procese na razini izvođenja
  • Izraditi i održavati dokumentaciju potrebnu za instalaciju, konfiguraciju, prilagodbu, administraciju i zaštitu informacijskih sustava
  • Razumjeti ulogu i održavati operacijski sustav te mrežnu i podatkovnu infrastrukturu
  • Odabrati i primijeniti metode iz područja programiranja, podatkovnih tehnologija i modeliranja podataka i procesa u problemskim domenama
  • Razumjeti i primijeniti odabranih matematičkih tema iz logike, relacija, linearne algrebre i statistike koje su temelj za usvajanje informatičkih i ekonomskih znanja
  • Odabrati i primijeniti odabrane tehnike zaštite informacijskih sustava uz poznavanje zakonskih i normativnih okvira za informacijsku i računalnu sigurnost
  • Planirati i podržati uvođenje novih informacijskih tehnologija za potporu organizacijskim procesima
  • Primijeniti odgovarajuće metode i alate za potporu u obradi, interpretaciji i vizualizaciji podataka za potporu u donošenju odluka
  • Primijeniti vještine učenja (uključujući i e-učenje) i planiranja potrebnih za cjeloživotno učenje, nastavak obrazovanja na diplomskom studiju te razvoj karijere u struci
Osnovna literatura
  • Lewis, W. E. (2016). Software testing and continuous quality improvement. Auerbach publications.
  • Beck, K (2002). Test driven development : By example, Addison-Wesley
  • Osherove, R. (2009). The art of unit testing: With examples in .NET, Manning
Dopunska literatura
  • Pisani materijali i videozapisi dostupni na sustavu za elektroničko učenje.
Slični kolegiji
Redoviti studenti Izvanredni studenti
izvanredni rok
Datum: 14.04.2025.
Vrijeme: 16:00
Opis: Na Fakultetu
U kalendaru ispod se nalaze konzultacije predmetnih nastavnika, no za detalje o konzultacijama možete provjeriti na profilu pojedinog predmetnog nastavnika.
2024 © Fakultet organizacije i informatike, Centar za razvoj programskih proizvoda