Professional Documents
Culture Documents
U ovom dokumentu opisaću vam kako mozete koristiti opciju Inspect element za testiranje.
Ovaj pomoćni alata vam omogućava da vidite kod koji se nalazi iza svakog svojstva aplikacije/sajta, u
smislu front-end dela.
Zašto ga koristiti?
Dizajner: Želite li da vidite kako bi sajt izgledao na mobilnom? Kako bi izgledao tekst da se koristi font A
ili font B? Kako izgleda dugme ako se koristi boja A ili boja B?
Osoba za prodaju/marketing: Zanima vas koje sve reči konkurencija koristi u hederu sajta ili da proverite
da li se sajt učitava presporo
Pisac: Dosta vam je da blurujete ime/mejl u screenshotovima? Sa ovim alataom možete izmeniti veb
stranicu u sekundi
Agent za podršku (support): Treba vam način da pojasnite programerima šta da se popravi na sajtu.
Tester: Treba vam način da lakše prijavite bug ili proverite ponašanje veb stranice pod raznim
okolnostima ili da proverite postoe li neki errori prilikom učitavanja određenih delova stranice
Za sve ovo a i za mnogo više, Inspect element je vrlo koristan alat. Obuhvata razne super stvari: konzolu
gde se pušta kod, View Source- da se vidi sirovi kod iza sajt, Sources page sa listom svakog fajla koji se
load-uje na sajtu itd.
1
Kako se pokreće?
U Chrome-u:
Još jedna način je da preko tastature jednostavno kliknete na taster F12. Rezultat je isti.
Takođe, možeze kliknuti na hamburger meni (ikonica sa 3 tačke) gore desno u Google Chrome toolbar-u,
klik na More Tools, klik na Developer Tools.
2
Slika 1: Pokretanje Inspect elementa preko miša
Može se naći na vrhu ovog alata i izgleda kao strelica u kvadratu )na slici obeleženo žutom bojom):
3
Koristi se kako bi se pronašao neki element na stranici tj. Njime možete bukvalno stati, kliknuti na neki
element i tako dobiti njegove detalje u prozoru sa strane.
Primer:
Kliknite na pokazivač
Primetićete da je loog kao dobio neku plavu pozadinu kako ste miš stavili preko njega
Kad ste kliknuli na logo, na prozoru desno obeležen je deo koda koji se odnosi na logo (deo koda dobio je
sivu pozadinsku boju)
Tu možete videti i stil koji je korišćen tokom programiranja tj. Kako je element stilizovan (tab se zove
Styles). Tu se nalaze atributi veb stranice sa svojim vrednostima. Npr. Atribut je font-style, color,
displaz... Prikazane su koje su boje korišćene, koji razmaci (paddings, margins), koji font i njegov stil(ako
je tekst upitanju) itd, itd:
4
Bukvalno, korišenjem selektora, možete odabrati element sa stranice i videti njegove pojedinosti. Time
npr. možete testirati da li je prava boja iskorišćena prilikom programiranja, jer se boje obeležavaju
određenim kombinacijama slova i brojeva, tzv Hex kod (npr. Jedna nijansa ljubičaste se obeležava sa
EE82EE. Klijent može tražiti određeni hex kod za ljubičastu koji na oko može biti sličan ali kod je kod)
Kad selektujete element levo (Elements panel), možete dakle videti CSS pravila koja su korišćena za taj
element na desnoj strani (Styles panel). Možete stopirati stil koji se koristi tako što kliknete checkbox
pored njega i ukinete ga (disable) odtštiklirate checkbox:
5
Takođe možete da editujete elemente i promenite im stil.
Što se tiče teksta, tako možete proveravati koji font stil je korišćen (font-family: Arial, Helvetica... itd itd),
veličina fonta (font-size: 20..30..), da li je italik ili sl (font-style: normal/italic/oblique) itd.
Možete editovati elemente preko ovog alata. To znači da ih možete izmeniti i videti kako se stranica
ponaša kad je element veći ili manji. To to radite nije izmena koda pa da će je i drugi videti. To vidite
samo vi na vašem okruženju i čim osvežite stranicu, sve se vraća na onako kako je i bilo, na onaj izvorni
kod.
Na primer, možete proveriti kako se stranica ponaša ako ubacite neku ogromnu količinu teksta.
6
Slika 1: Originalni tekst sa vebsajta:
7
Možete npr i boju teksta da izmenite, smao treba da nadjete odgovarajući atribut u Styles sekciji.
Tab: Elements
Ovaj tab omogućava da vidite stil vaše stranice. Ima određene pod-tabove (Styles, Computed, Event
Listeners, DOM Breakponts, Properties, Accesability).
8
Styles
U ovom sekciji možete videti sve u vezi sa HTML, CSS i Javascript jezicima koji su korišćeni za veb sajt.
Skoro kao da gledate pravi (source) kod sajta, sa jednom glavnom razlikom: možete da imzenite bilo koji
deo koda (opisano gore u pirmerima) i vidite promene u realnom vremenu (odmah ispred sebe) ali čim
učitate opet istu stranicu, izmene se gube.
Ovde dakle vidite sve stilove koji su korišćeni za stilizovanje (CSS) vaše starnice a možete i sami dodati
neko stilsko pravilo (style rule) tj, kao iskodirati deo i videti kako se stranica ponaša.
S opcijom check/uncheck atribut, možete da ukinete neko pravilo i opet vidite kako se stranic aponaša
bez njega.
Kad koristite selektor i stavite miš preko nekog elementa stranice, možete videti nekoliko boja oko
elementa: kao na slici:
Ove tri boje predstavljaju tzv.spacing properties elementa. Skrolujte desno na dno CSS sekcije i možete
videti dijagram sa jasnijim merama u pikselima:
9
Ovde je prikazano koliko je element udaljen putem atributa padding and margin, kakav mu je border itd.
10
Kao što primećujete, elementi imaju ovaj znak:
Event Listeners
Event Listener je procedura/funckija u programu koja čeka da se događaj/event pojavi. Primer event-a je
klik ili pomeranje miša, klik na tastaturi... Listener je programiran da reaguje na input ili signal tako što
zove tzv. Event handler. Specifičan je jezike Java i Javacript.
11
U ovom tabu možete videti koji listeneri se koriste na stranici i kako reaguju na određenu akciju (npr klik)
kao i vrmee reakcije:
DOM Breakpoints
DOM, Document Object Model, definiše strukturu vaše stranice. Svaki DOM node (čvor) jeste jedan
element stranice.
Ovim modelom se prikazuju objeki strukture i sadrđaja nekog dokumenta na vebu. To je interfejs za html
i xml dokumente koji prikazuje čvorove/nodes i objekte/objects stranice. Tako se programski jezik
povezuje sa stranicom.
Dakle wb stranica je dokument. Može da se prikaže i prozoru browser-a ili kao HTML izvorni kod. U
svakom slučaju, to je isti dokument. DOM je objektno orijentisana reprezentacija veb stranice koji se
modifikuje preko npr. Javascript jezika.
U prevodu: znate sve one cool animacije koje vidite na nekoj veb stranici? Prave se tako što se
manipuliše DOM-om. Njime se omogućava čitanje HTML i XML dokumenata u browser-u. Omogućava se
12
jeziku (Javascript) da manipuliše, pravi stukturu i stil vaše veb stranice. DOM izgleda kao drvo u kom su
predstavljeni delovi veb stranice (slika dole):
Više o tome:
https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Introduction
https://www.freecodecamp.org/news/whats-the-document-object-model-and-why-you-should-know-
how-to-use-it-1a2d0bc5429d/
https://bitsofco.de/what-exactly-is-the-dom/
13
DOM Breakpoints predstavlja način da se pauzira javascript kod. Ima mnogo načina za to ali to već
iziskuje znanje programiranja I javascripta.
https://developers.google.com/web/tools/chrome-devtools/javascript/breakpoints
Properties
Ovde možete videti informacije o DOM-u u vezi sa elementom stranice koji ste odabrali preko selektora.
Ovo je posebno važna stvar za npr Javascript programera.
Ovde vi, kao testeri, možete videti šta je child a šta parent element i time računati relacije među
elementima (dobra stvar za automation testing) preko tzv. DOM tree/DOM stabla.
14
15
Tab: Console
16
Ovim alatom možete da uđete u Javascript ili Jquey komande koje imaju dodira sa veb strabicom na
kojoj se trenutno nalazite.
Preko ovog alata možete da vidite ima li nekih grešaka u vezi sa npr javascript fajlom (toga ne sme
biti).
Šta to znači?
Svaki put kad učitate/loadujete stranicu, i konzoli se sve briše. Ako treba da vidite logove sranice,
uključite opciju Preserve logs:
17
Zašto?
Jednostavno, veb programeri često loguju poruke u Console da porvere da im Javascript radi kako treba.
Kad browser učita Javascript i vidi to nešto što je programer napravio (stručan naziv je expression), on
zna da treba da loguje poruku u console.
Više o tome:
https://developers.google.com/web/tools/chrome-devtools/console
18
Sa Preserve log:
Tab: Sources
Koristi se da:
1. Vidite fajlove
2. Editujete CSS i Javascript
3. Kreirate i sačuvate Snippete javascripta koje moćete puštati na bilo kojoj starnici
4. Debug Javascript
5. Postaviti radno okruženje- Workspace
Vidi fajlove
Sources:Pages
19
Preko ove opcije možete videti sve resurse koje je određena stranica učitala
Top level (top na screenshotu) predstavlja HTML okvir/frame. To ćete naći na svakoj stranici koju
posetite o to je glavni/main frame stranice. (više o frame:
https://www.w3.org/TR/html401/present/frames.html)
Second level (elanwave.com na screenshotu) predstavlja origin (više o tome:
https://html.spec.whatwg.org/multipage/origin.html#origin)
Third level, fourh level itd, predstavljaju direktorijume I resurse koji se učitavju od određenog
origina. Npr. Pun path za resurs sa stranice je:
https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.5.2/animate.min.css
Ako klinete na neki fajl u Page panelu, desno u Editor mode-u ćete videti njegove detalje:
20
Za npr, slike, možete videti image preview:
U Editor panelu, možete editovati i menjati CSS i Javascript i pormeniti neku vrednost atributa
(npr.izmeniti boju elementa na stranici, objašnjeno je u prethodnim poglavljima)
Kreiranje Snippets
Snippets su skripte koje možete run-ovati/pustiti na bilo kojoj stranici. To je izraz koji se koristi sa mali
deo koda koji s emože iznova koristiti- re-usable code.
https://developers.google.com/web/tools/chrome-devtools/sources#edit
21
Debug Javascript
Koristi se da se otkrije šta nije u redu sa Javascript fajlom. Prkeo njega se setuju tzv. Breakpoints kojima
će se stopirati deo u kodu namerno kako bi se korak po korak pronašla greška.
Kad se edituje fajl u Sources panelu, te se izmene gube čim se stranic aopet učita. Workspace
omogućava da se sačuvaju te promene zarad nekog daljeg rada sa njima.
Tab: Network
Ovde se snimaju sve informacije u vezi sa svakom operacijom na sajtu, uključujuži I podatke u vezi sa
vremenom/tajmingom, HTTP zahtevima/requests, odgovorima/response, cookies itd.
Možete koristiti filtere u ovom panelu, da vidite kako se ponašaju javascript (JS) fajlovi, slike (Img), CSS,
Media itd.
Na slici dole možete videti primer za koliko su se učitale stranica About Us I slike na njoj na sajtu
elanwave.com:
22
Preko ovog panela ćete se postarati da su resursi zaista upload-ovani ili downloaded sa stranice i možete
inspektovati određene resurse pojedinaćno i videti njihovu veličinu, vreme učitavnaj, cookie itd.
Network panel loguje/beleži sve aktivnost sa mreže a u vezi sa određenom stranicom u tzv. Network
logu:
Svaki red u Network logu predstavlja RESURS stranice. Svi resursi su defoltno poređani hronološki.
Resurs na vrhu je obično glavni HTM dokument. Resursi na dnu je sve ono za šta je zahtev/request
poslat kao poslednji.
23
Kolone se mogu konfigurisati. Desni klik na Network Log tabelu I dobićete meni sa opcijama:
Šta god da odaberete, dobićete novu kolonu u tabeli I nove podatke I vezi sa resursima.
24
Hoćete da simulirate sporiju konekciju na mrežu?
Koristićete nešto što se zove throttling the page da bi npr simulirali ponašanje na mobilnom.
25
Kad se poseta stranici ponovi, browser će iskoristiti neke fajlove iz svoje cache memorije koje ubrzaju
učitavanje stranice. Opcija koju ste iskoristili za brisanje ovog cache-a nateraće browser da ide na mrežu sa
svim resursima.
Tab: Application
Ovaj tab vam je koristan da vidite šta je sve sačuvano za Cookies I Cache.
Npr. Kad se radi neka CSS izmena (UI izmena), često browser ume da zakešira te vi kao tester ne vidite to
nešto novo već vidite I dalje staru implementaciju.
U tom slučaju, uvvek brišite cookies I cache I uradite Hard reload (objašnjeno gore)
26
Cookies brišete tako što kliknete Cookies desnim klikom I kliknete Clear:
Sa Clear storage opcijom I klikom na dugme Clear site data, brišete podatke sajta:
27
Opcija: Emulator
U Inspect element izgleda kao ikonica mobilnog telefona pored tablet a:
Koristi se kako bi se simulirale razne rezolucije I tako proverilo kako se aplikacija ponaša na raznim
uređajima- desktop, mobilni, tablet, ipad, iphone…
28
U padajućem meniju možete odabrati neke uređaje:
Takođe, preko opcije Edit možete naži I dodatne uređaje. Kad kliknete ovu opciju u padajućem meniju,
otvoriće vam se ovaj prozor I tu ćete odabrati još uređaja:
29
Emulator ima opciju da se izabere portrait ili landscape mode uređaja:
Portrait:
Landsape:
30
Primetićete da se vaš miš na sad pokazuje kao mali krug na stranici. Ovo vam omogućava da se ponašate kao
da korsitite pravi mobilni telefon/tablet.
Ako kliknete dok npr vučete stranicu dole, ovo neće obeležiti tekst kao što bi se inače desilo u vašem
browser, već će ekran biti povučen dole kao što to biva na touchscreenu.
Pritisnite ESC da otvorite search sekciju u Inspect element I ovaj put kliknite 3 meni 3-tačke u levom delu za
meni ocpije. Pojaviće se More tools
31
Odaberite Sensors I dobićete tri nova alata: Geolocation, Orientation I Touch.
32
Touch vam omogućava da uključite/isključite selector koji je sad u obliku kruga I koji se ponaša kao prst a ne
normalan miš.
Orientation vam omogućava da interakciju obavljate sa osetljivijim vebsajtovima poput online igricama.
Preko Networks koji je spomenut u gornjim poglavljima, možete simulirati različite brže/sporije mreže:
------------------------------------------------------------------------------------------------------------------------------------------------
Više za čitanje:
https://openclassrooms.com/en/courses/3523321-optimize-your-website-with-devtools/3885306-console
https://www.quora.com/How-is-inspect-element-useful-for-a-QA-engineer
https://community.optimizely.com/t5/Developers/Using-Chrome-Developer-Tools-to-QA-and-Test-
Experiments/td-p/11684
https://blog.scottlogic.com/2015/12/16/devTools.html
http://anti-code.com/devtools-cheatsheet/
https://zapier.com/blog/inspect-element-tutorial/
33