
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Preduslovi za kurs. Pregled modula Osnove JavaScript-a. Ako su vam neke od ovih tema nove, obavezno pogledajte te lekcije kako biste se upoznali sa osnovama JavaScript-a.
Prvo pokretanje programa „Hello World” u JavaScript-u
Kako se deklariše promenljiva u JavaScript-u
Kako se dodeljuju vrednosti promenljivama
Kako se kreiraju konstante. Koja je razlika između konstanti i promenljivih
Koji su različiti primitivni tipovi podataka u JavaScript-u
Kako raditi sa stringovima u JavaScript-u
Kombinovanje više stringova u novu vrednost pomoću konkatenacije i interpolacije
Korišćenje promenljivih u konkatenaciji i interpolaciji stringova
Šta je objekat, a šta niz (array)
Kako se čitaju vrednosti iz objekata i nizova
Kako se dodaju nove vrednosti u objekte i nizove
Kako se postojeće vrednosti u objektima i nizovima menjaju (override)
Sintaksa tačkaste notacije i notacije uglastim zagradama za čitanje objekata
Relacioni operatori: veće od, manje od, veće ili jednako, manje ili jednako
Operatori jednakosti: labavo poređenje (==) i strogo poređenje (===)
Logički operator „I” (AND)
Logički operator „ILI” (OR)
Logički operator „NE” (NOT)
Primeri kombinacija ovih operatora na tipičnim primerima logike aplikacije
Objašnjenje uslovnih izraza. Kako kontrolisati tok izvršavanja koda Implementacija manjeg bloka koda koji, koristeći logičke operatore i uslovne izraze, ispisuje različitu poruku u konzolu u zavisnosti od unetih informacija
Kako ponavljati kod pomoću JavaScript petlji
„for i” petlja – iteracija pomoću indeksa i uslova
„for of” petlja – iteracija kroz niz pomoću iteratora
ES6 sintaksa za „forEach” petlju – moderna metoda za prolazak kroz niz
Kako zaustaviti izvršavanje petlje – korišćenjem break ili drugih kontrolnih izraza
Kako kreirati različite tipove funkcija u JavaScript-u
Deklarativne funkcije
Anonimne funkcije
ES6 sintaksa (fat arrow funkcije)
Kako proslediti argumente funkciji i vratiti vrednosti iz funkcije
Importovanje i eksportovanje funkcija
Glavna razlika između TypeScript i JavaScript jezika
Kako definisati strogi primitivni tip za promenljivu u TypeScript-u
Kako kreirati sopstveni (custom) tip podataka
Kako kreirati JavaScript klasu
Kako definisati metodu unutar klase
Kako kreirati instancu klase i pozvati metode klase
Kako proslediti argumente metodama klase
Annotacija metoda za podršku IntelliSense funkcionalnosti u VS Code-u
Ovaj kurs je kreiran posebno za QA inženjere koji žele da naprave sledeći korak u svojoj karijeri – ka automatizaciji testiranja. Ako nikada ranije niste pisali kod, ne brinite. Kurs je potpuno prilagođen početnicima, bez potrebe za prethodnim programerskim iskustvom.
Kroz praktične primere, objašnjenja jednostavnim jezikom i realne scenarije iz sveta testiranja, naučićete sve što vam je potrebno da razumete i koristite JavaScript u kontekstu QA posla. Od osnovnih koncepata programiranja, preko rada sa promenljivama, funkcijama i petljama, pa sve do pripreme za rad sa alatima kao što su Playwright, Cypress i Selenium.
Šta ćete naučiti:
Osnove JavaScript-a kroz QA prizmu
Kako da razmišljate kao programer i pišete efikasan kod
Praktične vežbe koje simuliraju realne test scenarije
Pripremu za automatizaciju testiranja uz moderne alate
Najčešće greške koje početnici prave – i kako da ih izbegnete
Syllabus:
Hello World: Naučićeš osnove sintakse JavaScripta i kako da prikažeš svoj prvi programski izlaz. Ovo je temelj za razumevanje kako JavaScript funkcioniše.
Varijable, Konstante i Data tipovi (Varijable, Konstante i Tipovi Podataka): Razumećeš kako da deklarišeš i koristiš varijable za čuvanje podataka koji se mogu menjati, kao i konstante za vrednosti koje ostaju nepromenjene. Upoznaćeš se sa osnovnim tipovima podataka u JavaScriptu kao što su brojevi, stringovi, boolean vrednosti, null i undefined.
Konkatenacija i Interpolacija: Naučićeš kako da spajaš (konkatencija) tekstualne vrednosti i kako da ubacuješ (interpolacija) vrednosti varijabli unutar stringova na moderan i efikasan način.
Objekti i Liste (Nizovi): Steći ćeš znanje o složenim tipovima podataka kao što su objekti, koji ti omogućavaju da grupišeš podatke po ključevima, i liste (nizovi), koji predstavljaju uređene kolekcije podataka. Ovo je ključno za rad sa podacima u veb aplikacijama
Relacioni i operatori jednakosti: Naučićeš kako da koristiš operatore za poređenje vrednosti (npr. veće od, manje od) i operatore za proveru jednakosti (stroga i nestroga jednakost). Ovo je neophodno za donošenje odluka u tvom kodu
Logički Operatori: Razumećeš kako da kombinuješ uslove koristeći logičke operatore kao što su "i" (AND), "ili" (OR) i "ne" (NOT). Ovo ti omogućava da kreiraš složenije logičke izraze
Uslovna izjava (If Izjava): Naučićeš kako da koristiš if, else if i else izjave za izvršavanje različitih delova koda u zavisnosti od toga da li je određeni uslov ispunjen. Ovo je osnova za kontrolu toka programagration and parallel test execution
Petlje (Petlje): Savladaćeš različite vrste petlji kao što su for, while i do...while petlje, koje ti omogućavaju da ponavljaš određeni blok koda više puta. Ovo je ključno za automatizaciju zadataka
Funkcije: Naučićeš kako da definišeš i pozivaš funkcije, koje predstavljaju blokove koda koji obavljaju određeni zadatak. Funkcije pomažu u organizaciji koda i njegovom ponovnom korišćenjem
Klase i Metode: Upoznaćeš se sa konceptima objektno-orijentisanog programiranja u JavaScriptu, uključujući definisanje klasa kao nacrta za objekte i metoda kao funkcija unutar klasa
TypeScript vs JavaScript: Razumećeš razlike i sličnosti između JavaScripta i TypeScripta, nadskupa JavaScripta koji dodaje statičko tipiziranje. Ovo će ti pomoći da razumeš prednosti i nedostatke oba jezika u kontekstu QA
JavaScript zadatak: Praktično ćeš primeniti stečeno znanje kroz konkretan zadatak koji će ti pomoći da učvrstiš razumevanje koncepata i razviješ veštine rešavanja problema koristeći JavaScript
Kurs je strukturiran tako da vas vodi korak po korak, sa jasnim objašnjenjima i zadacima koji učvršćuju znanje. Cilj je da steknete samopouzdanje u radu sa kodom i da budete spremni za sledeći nivo – automatizaciju testova.