Professional Documents
Culture Documents
INFORMAATIKAINSTITUUT
TALLINN 2015
Organisatsiooniks oleme valinud 1A.EE O, mis haldab Eesti suurimat veebipoodi (www.1a.ee). Tegemist
on arvuti ja elektroonikat mva ettevttega. Ettevtte pakub klienditele erineva valikuga
elektroonikatooteid. Veebileheklg on 1A.EE O jaoks ainus mgiplatvorm, millega organisatsioon raha
teenib.
Veebipood tagab klienditele pevaringse ligipsu. Ssteemi omaduste hulka kuulub pidev
kttesaadavus, mis tagab ettevtte jaoks suurema mgikive, kui tavaline jaemgikauplus. Lisaks sellele
on ssteem automatiseeritud alates toote valikust, kuni maksekeskkonda suunamiseni, mis thendab, et
ettevttel ei kulu raha selle jaoks, et kaupluses samad lesanded ttajate vahel jagada. pevaringselt
ktte saadav ja mugav veebipood aitab ettevttel klientide arvu kindlasti suurendada. Veebipood pakub
lisaks tkindlusele veel ka kige ajakohasemaid tooteid (otse esilehel). Veebipoest on vimalik osta kige
uuemaid elektroonikaseadmeid.
Ssteemi kasutajateks on kik inimesed, kellel on soov osta elektroonika seadmeid. Ssteem on ehitatult
sellisena les, et klient ei pea olema veebipoes kasutaja, et ost sooritada. Teiseks ssteemi kasutajaks on
1A.EE poolt mratud administraatorid, kes tegelevad klienditega, kui neil on probleem ja ssteemi
haldusega.
Kliendi huviks on mugav ja lihtne elektroonika toote otsmine. Toote ostmine ei tohiks olla keeruline. Toote
ostmisel peaks maksmine toimub kliendi poolt valitud pangas. Lisaks on thtis, et klient saaks ostu
sooritada tema poolt valitud ajal, pevaringselt. 1a.ee peab olema kliendi jaoks kige esimene veebipood,
kuhu ta prdub omale elektroonikaseadmeid ostma.
1A.EE O jaoks on thtis silitada organisatiooni hea maine ning teenida raha suureneva turu arvelt.
1.2.
Ssteem ja organisatsioon.
Ssteemi eeldatavateks kasutajateks on erinevad isikud keda hendab soov osta endale
veebipoest erinevaid kaupu. Kuna mgil on tooteid arvuti emaplaadist survepesurini,
siis on ettevte laia haardega.
Lisaks kasutab ssteemi eeldavasti ssteemi administraator ja veebilehe tugimeeskond.
Ssteemist saavad kasu nii ettevtte kliendid kui ka ettevtte omanikud, kliendid saavad
mugavalt ja kodust lahkumata tellida endale kaupu laiast tootekataloogist ja omanikud
saavad tellimuste pealt kasumit.
Ssteemi eeldatava arhitektuuri peamisteks kihtideks on veebiserveri kihid,
andmevahetus lbi interneti klientidega, administratiivsed mallid ning veebipoe mallid.
1.3.
Metoodika.
Funktsionaalsed nuded.
Kasutaja:
1. FN1 - Registreerimine
Eeltingimused: Tidetud on kik vajalikud lahtrid ja need valideeritud.
Jreltingimused: Tidetud avaldus salvestatakse andmebaasi ja kasutajale kuvatakse, et
registreerimine nnestus ja kasutaja sisestatud emailile on saadetud aktiveerimise kood.
Phistsenaarium: Kasutaja valib avalehelt nupu Registreeru, tidab kik vajalikud lahtrid,
vajadusel parandab vead. Seejrel vajutab nupule Registreeru.
2. FN2 - Ssteemi sisenemine(login)
Eeltingimused: Tidetud on kik vajalikud lahtrid ja need valideeritud, kasutaja on vlja logitud.
Jreltingimused: Kasutaja on ssteemi sisselogitud.
Phistsenaarium: Kasutaja valib avalehelt nupu Sisene, tidab kik vajalikud lahtrid. Seejrel
vajutab nupule Sisene. Kui andmebaasis polnud vastavate andmetega kasutajat, siis kuvatakse
sisselogimise leht koos veateatega.
3. FN3 - Ssteemist vljalogimine(logout)
Eeltingimused: Kasutaja on ssteemi sisselogitud.
Jreltingimused: Kasutaja on ssteemist vljalogitud.
Phistsenaarium: Kasutaja on sisse logitud ssteemi (ehk teisisnu on tal ligips tema profiilile)
ja valib avalehelt Vlju. Kasutaja logitakse ssteemist vlja ja viiakse tagasi esilehele.
4. FN4 - Uudiskirjaga liitumine
Eeltingimused: Tidetud on kik vajalik lahter ja see on valideeritud.
Jreltingimused: Kasutaja on liitunud uudiskirjaga.
Phistsenaarium: Kasutaja sisestab avalehel Liitu uudiskirjaga juures olevasse lahtrisse oma
emaili ja vajutab nuppu Liitu. Kui email on vormiliselt igesti sisestatud, siis kuvatakse
kasutajale Tname, et liitusid 1a.ee uudiskirjaga!
5. FN5 - Emaili saatmine
Eeltingimused: Kasutajal on installitud arvutisse haldurprogramm emaili jaoks.
Jreltingimused:Email saadetakse info@1a.ee-sse.
Phistsenaarium: Kasutaja vajutab emailinupule ja seejrel avaneb emailihaldur, kus on tidetud
saaja lnk info@1a.ee-ga, seejrel tidab kasutaja lejnud vajaminevad lahtrid ning saadab
kirja ra.
6. FN6 - Ettevtte jlgimine facebookis
Eeltingimused: Kasutaja on oma Facebooki kontosse sisselogitud.
Jreltingimused: Kasutaja jlgib Facebookis 1a.eed.
Phistsenaarium: Kasutaja vajutab veebilehel nuppu Meeldib ja ette tuleb kinnitusaken, kus
kasutaja saab kinnitada Meeldimist ja tema eest Liketakse 1a.ee Facebooki lehte.
7. FN7 - Ettevtte kontaktandmete vaatamine
Eeltingimused: Kasutaja soovib ettevtte kontaktide ja asukoha kohta infot saada.
Jreltingimused: Kasutaja sai vajaliku info ktte.
Phistsenaarium: Kasutaja valib pise menst Meist > Kontaktid ja seal kuvatakse talle vhemalt
telefoninumber
8. FN8 - Maksmine
Eeltingimused: Veebilehitseja salvestab cookied.
Jreltingimused: Arve saadetakse emailile.
Phistsenaarium: Kasutaja valib toote, lisab ostukorvi, valik makseviisi ja saab kinnituse, et
tellimus esitatud.
Mittefunktsionaalsed nuded.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
MFN4: Leht peab vimaldama vhemalt 100l kasutajal korraga otsingut teostada.
MFN5: Leht peab vimaldama vhemalt 100l kasutajal korraga toodet ostukorvi lisad.
MFN6: Leht peab vimaldama 100l kasutajal sirvida kategoorjiaid vhem kui 1 sekundilise laadimisajaga.
MFN7: Veebilehte peab olema vimalik kasutada jrgnevates veebibrauserites: Chrome, Mozilla, IE, Safari(Kige
uuemad versioonid).
MFN8: Veebilehte peab olema vimalik kasutada mobiilibrauserites. (iOS, Android).
MFN9: Veebibrauseri aknasuurust muutes, peab leht loetavalt kuvatud olema.
MFN10: Kasutajat luues peab aktiveerimis-email saabuma 60 minuti jooksul.
MFN11: 3-4 nupuvajutusega peab judma enimtellitud toodeteni
MFN12: Otsingus ei saa kasutada SQL injectionit.
MFN13: Kasutaja sisselogimisel ei saa kasutada SQL injectionit.
MFN14: Kasutaja laeb esilehte 100 korda, laadimisaja hlve ei tohi olla le 500ms.
MFN15: Veebileht peab ttama ka vanemate arvutite (brauserite) peal. (IE 7 ja madalam).
3. Hankimise tegevused .
3.1.
Kasutati koskmudelit kuna ettevtte emafirma poolt oli projekti mall ja titmise kogemus
olemas.
Antud mudel oli sobiv kuna projekt ei vajanud titmisel suurt paindlikkust ja nuded ajas
ei muutunud.
Projekti tideti faaside kaupa, iga faasi tulemiks oli dokument, mille alusel sai jrgmine
faas td alustada. Kuna projektimeeskond oli vike siis ei tekkinud vga probleeme
eelnevate faaside tulemite ja t kigu intrepreteerimisega.
3.2.
Antud projekt teostati n. majasiseselt ehk hankijaks oli ettevte, esindajaks siis projektijuht ja analtik.
T teostasid ettevtte ttajad ja seetttu oli koost tihe. Projekti nuded ja vastuvtukriteeriumud olid
koostatud ettevtte siseselt ning toote leandmine toimus ettevtte ttajate vahel, ehk oli vimalik olla
paindlik ja probleemid said lahenduse thusalt.
Projektile aitas kvasti kaasa fakt, et antud ettevte on Lti identse ettevtte ttarfirma. Sealtkaudu tulid
Lti projekti dokumentatsioon ja know-how, mis aitas kindlasti kvasti kaasa ja seetttu oli ka ressurssi
planeerimine lihtsam.
3.3.
Antud projektis polnud erilisi nuete muudatusi, kuna projekti n. mall oli olemas siis tulid vaid vikesed
muudatused vastavalt Eesti turu eriprale.
Kuna projekti teostamine toimus majasiseselt siis oli muudatustega kohanemine mugav ja kiire.
Muudatuste vajalikkuse le otsustas projektijuht.
3.4.
Vastuvtmise plaan.
4. Riskid ja vastuvtutestid.
4.1.
Riskide hinnang.
Ssteemile on oluline, et kasutajate kontod oleksid turvatud ja neile ei pseks kuidagi ligi, sest need
sisaldavad isikuandmeid. See aga kindlustatakse ssteemisiseselt ja seda ei saa me kuidagi testida.
Ettevtte seisukohalt on thtis, et funktsionaalsed ja mittefunktsionaalsed nuded on tidetud, sest
veebipood peab inimestele atraktiivne ja lihtsasti ning vigadeta kasutatav olema.
Suurim risk meie hinnangul on, et otsing ja filtreerimine ei toimi nii nagu peaks, ning kuna konto loomine
thendab ka kinnitus emaili saatmist, siis vib sellega probleeme olla.
Riski ID: R1
Kirjeldus: Veebileht ei avane mingis brauseris
Sagedus: Harva
Mju: Suur
Prioriteet: Krge
Riski ID: R2
Kirjeldus: Veebileht ei avane vi ei toimi korrektselt nutiseadmetes
Sagedus: Harva
Mju: Suur
Prioriteet: Krge
Riski ID: R3
Kirjeldus: Otsing ja toodete sirvimine ei tta korrektselt
Sagedus: Harva
Mju: Suur
Prioriteet: Krge
Riski ID: R4
Kirjeldus: Ostukorvi pole vimalik tooteid lisada
Sagedus: Harva
Mju: Suur
Prioriteet: Krge
Riski ID: R5
Kirjeldus: Ostukorvi eest pole vimalik maksta, ehk tellimust lpetada
Sagedus: Harva
Mju: Suur
Prioriteet: Krge
Riski ID: R6
Kirjeldus: Koormuse tttu pole veebileht kasutatav
Sagedus: Harva
Mju: Suur
Prioriteet: Krge
Riski ID: R7
Kirjeldus: Veebileht laeb leheklgi aeglaselt
Sagedus: Harva
Mju: Madal
Prioriteet: Madal
Riski ID: R8
Kirjeldus: Kasutaja sisestab vljadesse kogemata vi tahtlikult ebasobivat sisendit(sql injection, vale emaili
vorm jne)
Sagedus: Tihti
Mju: Madal
Prioriteet: Keskmine
Riski ID: R9
Kirjeldus: Kasutaja loodud kasutajakontot ei registreerita andmebaasis
Sagedus: Harva
Mju: Keskmine
Prioriteet: Madal
Riski ID: R10
Kirjeldus: Lisapluginate ts esineb vigu
Sagedus: Harva
Mju: Madal
Prioriteet: Madal
Riski ID: R11
Kirjeldus: Kasutajakonto profiiliandmeid ei saa muuta
Sagedus: Harva
Mju: Madal
Prioriteet: Madal
4.2.
Vastuvtutestide koostamine.
Idee: Veebileht ei tohi lasta kasutajal sisestada SQL lauseid, mis vivad andmebaasis tabeleid muuta,
kustuda, luua.
Sisend: Sisestatakse SQL kske otsingu vlja.
Oodatav vljund: Veebileht annab vea teate vi pring annab 0 vastust. Veebileht kuvab endiselt kiki
andmebaasis olevaid tooteid ega anna mingeid veateateid.
Testi ID: VT9
Seotud nuded: MFN13
Seotud riskid: R8
Idee: Veebileht ei tohi lasta kasutajal sisestada SQL lauseid, mis vivad andmebaasis tabeleid muuta,
kustuda, luua.
Sisend: Sisestatakse SQL kske sisselogimisvljadesse.
Oodatav vljund: Veebileht ei lase sisse logida ja annab vea teate.
Testi ID: VT10
Seotud nuded: MFN14
Seotud riskid: R7
Idee: Veebileht peab laadima 100 korda maksimaalse hlvega 500ms.
Sisend: Simuleeritakse kasutaja poolt veebilehe laadimist 100 korda.
Oodatav vljund: Veebilehe laadimisel 100 korda on maksimaalne hlve alla 500ms.
Testi ID: VT8
Seotud nuded: MFN14
Seotud riskid: R7
Idee: Esileht peab ra laadima alla piisavalt kiiresti (alla 1 sekundi)
Sisend: Esileht avatakse 100 korda
Oodatav vljund: Esileht laeb ra vhemalt 1 sekundiga
Testi ID: VT9
Seotud nuded: MFN14
Seotud riskid: R3
Idee: Otsing peab vastuse andma alla 1,5 sekundi
Sisend: Simuleeritakse otsingu kasutamist, kus otsinguks antakse ette sna klar.
Oodatav vljund: Tulemus laetakse ra alla 1,5 sekundi
Testi ID: VT10
Seotud nuded: MFN14
Seotud riskid: R3
Idee: Kategooriate sirvimisel peab tulemus tulema alla 0,5 sekundi.
Sisend: Simuleeritakse 100x kasutaja poolt sirvimist. Valitakse Slearvutid ja tarvikud.
Oodatav vljund: Tulemus kuvatakse alla 0,5 sekundi jooksul
Testi ID: VT11
Seotud nuded: MFN14
Seotud riskid: R3
Idee: Otsing peab alati tulemuse andma, kui on olemas seotud vastus.
Sisend: Simuleeritakse otsingu sooritamist 100 korda.
Oodatav vljund: Kikidele kasutajatele kuvatakse tulemus
Testi ID: VT12
Seotud nuded: MFN14
Seotud riskid: R6
Idee: Toote samaaegsel ostukorvi lisamisel ei tohi tekkida probleeme
Sisend: Simuleeritakse otsingu toote Cooler Master Storm Devastator lisamist ostukorvi 100 kasutaja
poolt..
Test
Tulemus
Risk
Kommentaar
F1
FAIL
R9
F2
OK
R9
F3
OK
R9
F4
OK
R10
Vajutati avalehel uudiskirja saamiseks emaili lahtrisse, sisestati email ning telliti
uudiskiri, seejrel kontrolliti, kas vastuseks tuli: Tname, et liitusid 1a.ee
uudiskirjaga! Nd saad teada esimesena uudistoodetest, soodusmgidest ja
loosidest!
F5
OK
R10
F6
FAIL
R10
F7
OK
R10
Vajutati lingile Kontakt ning kontrolliti, kas tel. nr on see, mis ta eelnevalt samal
lehel oli
F8
OK
R4,R5
F9
OK
R4
Lisati toode ostukorvi, ning kontrolliti, kas ostukorvi tekkis 1 toode. Seejrel
toode kustutati
F10
OK
R3
Valiti menst emaplaadid ning filtreeriti Asrocki jrgi ning vaadati kas on
olemas toode Asrock N68-GS4 FX
F11
OK
R3
Otsiti otsinguga iphone 6 16gb ning vaadati, kas leitakse Apple iPhone 6 16GB
Space Grey
F12
OK
R10
Valiti menst Eelnevalt vaadatud tooted ning vaadati, kas seal on MSI GT80
2QE Titan SLI GT802QE-032NL
F13
OK
R10
Valiti menst Eelnevalt vrreldud tooted ning vaadati, kas seal on nupp, mis
laseb seda vrdlust uuesti vaadata
F14
OK
R3
Menst valiti Uued tooted ning seejrel valiti Nita 999 kige uuemat toodet
ning vaadati, kas kuvataval tootel on juures pilt, millel kirjas Uus
F15
OK
R10
levalt servast valiti EE asemel RU ning seejrel kontrolliti, kas tekkis link
nimega ,
5.1.
Esmane hinnang.
Testi F4 juures kontrolliti, kas uudiskirja tellides ilmub, tekst, mis kinnitab uudiskirja tellimist.
Testi F5 juures ei saa testida, kas emailivaatur avaneb emaililingile vajutades, kuid kasutajaga lbi tehes see toimib.
Testi F8-F9 juures tehti toimingud ostukorviga, vaadati kas tellimus lheb lbi ja kas ostukorvi ldse toode tekib.
Testi F10 juures katsetati filtreerimist. Test toimib ,kuniks on olemas toode Asrock N68-GS4 FX, mis filtreerimise
tulemusel leitav peaks olema.
Testis F11 kontrolliti otsingussteemi toimimist. Peale otsingut peab lehel leitab olema Apple iPhone 6 16GB
Space Grey. Test on sooritatav kuni toode on lehel olemas.
Testides F12-F13 kontrolliti, kas kasutajale on nhtavad tema pool eelnevalt vaadatud ja vrreldud tooted. Eeldus
on, et kasutaja on vaadanud ja vrrelnud tooteid.
Testiga F14 kontrolliti, kas uute toodete kuvamine toimib. Testimisel kontrolliti, kas uut toodet iseloomustav pilt
tekib tootele, kui test kivitada vi mitte
Testiga F15 kontrolliti, kas veebileht muutub keelt vahetades venekeelseks. Test lbiti edukalt kui lehele tekkis link
nimega ,
Test F1, F6 kukkus lbi
Testi F1 ei ole vimalik automaatselt kontrollida, sest seal vahel on robotikontroll.
Kui inimene seda testi sooritab, siis toimib edukalt.
Test F6 kukkus lbi, sest lehel olev nupp, mis peaks laskma ettevtte lehe facebookis meeldivaks lisada, ei tta.
6. Lbivaatused.
Lbivaatused toimuvad iga faasi lpus. Osaleb kogu projektimeeskond (projektijuht,
analtikud, arendajad, testijad). Lbivaatust viib lbi projektijuht. Lbivaatuse eelduseks on
eelnevas faasis valminud dokument vi dokumendid ja kogu meeskonna tutvumine nendega.
Meeskond avaldab projekti kigust ja eelnevast ning tulevast faasist arvamusi ja konstruktiivset
kriitikat. Arutatakse mis sai hsti tehtud ja mida saaks paremini teha.
Kindlasti ritatakse nende olemasolul leida faasis tehtud vigu.
Lbivaatuse nide
Aeg: Esimese faasi lpp(Nuete mrtlemine)
Tp: Nuete mratluse lbivaatus
Osalejad: Projektijuht , analtikud, arendajad, testijad
Tegevused: Projektijuht ja analtikud tutvustavad esimese faasi tulemit lejnud
meeskonnale. Kik meeskonna liikmed avaldavad arvamust tulemi kohta ja arutavad kik
punktid le, et jrgnevates faasides ei tekiks vastuolusid. Mrgitakse les vead. Pannakse paika
ajakava puudujkide krvaldamiseks. Protokoll allkirjastatakse
Tulemused: Leitud ja parandatud vigade protokoll, vigade parandamise ajakava
7.1.
8. Mittefunktsionaalsed testid
8.1 Riskiphiste mittefunktsionaalsete vastuvtutestide titmine
Test
MF1.Esilehe
avamiskiirus
Tulemus
OK
MF2.Otsingu OK
kiirus
MF3.Kategooria OK
te sirvimise
kiirus
MF4.Otsing 100 OK
kasutajaga
MF5.Toote
lisamine 100
inimesega
OK
Risk
R7
Kommentaar
Esilehele laeti reklaam, men ja edutatud tooted. Esileht laeti kindlalt
alla 1 sekundi.
R7
R7
R6,R3 Otsingu snaks oli klar ja otsing andis tulemuse kigile sajale
kasutajale, kuigi osade kasutajate jaoks vttis tulemuse vljastamine
palju aega.
R6,R4 100 kasutajat lisasid korraga ostukorvi he ja sama toote milleks oli
klaviatuuri ja hiire komplekt Cooler Master Storm Devastator.
Tulemused oli suureprased, kus keskmine tulemus oli kigest
~120ms.
MF6.100
OK
inimesega
kategooriate
sirvimine
MF7.Veebilehe OK
tkindlus
erinevates
brauserites
MF8. Veebileht PARTIALLY
mobiilibrauserite
s
MF9. Veebilehe
operatiivsus
MF10.
Registreerumiski
nnituse saamine
emailile
MF11. Kasutaja
sbralikkus
MF12. Otsingu
turvalisus
FAIL
R1
OK
R9
OK
R10
OK
R8
MF13. Kasutaja OK
turvalisus
R8
MF14. Veebilehe OK
tkindlus
R7
R1
9. Programmiphised testid.
9.1.
Meil ei olnud juurdepsu 1a.ee lhtekoodile ning seetttu valisime testimiseks Javas kirjutatud trips-traps-trulli,
mille koodi leidsime internetist. Testisime Eclipses JUnitiga.
public class TicTacToe {
char[][] board;
char currentPlayerMark;
public TicTacToe() {
board = new char[3][3];
currentPlayerMark = 'x';
initializeBoard();
}
// Loop through all cells of the board and if one is found to be empty (contains char '-') then return
false.
// Otherwise the board is full.
public boolean isBoardFull() {
// Check the two diagonals to see if either is a win. Return true if either wins.
boolean checkDiagonalsForWin() {
return ((checkRowCol(board[0][0], board[1][1], board[2][2]) == true) || (checkRowCol(board[0][2],
board[1][1], board[2][0]) == true));
}
// Check to see if all three values are the same (and not empty) indicating a win.
boolean checkRowCol(char c1, char c2, char c3) {
return ((c1 != '-') && (c1 == c2) && (c2 == c3));
}
if (currentPlayerMark == 'x') {
currentPlayerMark = 'o';
}
else {
currentPlayerMark = 'x';
}
}
// Places a mark at the cell specified by row and col with the mark of the current player.
public boolean placeMark(int row, int col) {
// Make sure that row and column are in bounds of the board.
if ((row >= 0) && (row < 3)) {
if ((col >= 0) && (col < 3)) {
if (board[row][col] == '-') {
board[row][col] = currentPlayerMark;
return true;
}
}
}
return false;
}
}
9.1.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
1.
2.
3.
4.
5.
6.
7.
8.
1.
2.
3.
4.
5.
6.
7.
8.
@Test
public void boardTest() {
TicTacToe game = new TicTacToe();
assertNotNull(game.board);
}
//Testib, et kui panna positsioonile 0,2 "x", siis see tekib ka sinna
@Test
public void printBoardTest() {
TicTacToe game = new TicTacToe();
game.placeMark(0, 2);
game.printBoard();
assertEquals("x", Character.toString(Arrays.deepToString(game.board).charAt(8)));
}
//Testib, et kui mnguvli on thi, siis pole mnguvli tis ja kui mnguvli on tidetud, siis see on tis
@Test
public void isBoardFullTest() {
TicTacToe game = new TicTacToe();
assertFalse(game.isBoardFull());
game.placeMark(0, 0);
game.changePlayer();
game.placeMark(0, 1);
game.changePlayer();
game.placeMark(0, 2);
game.changePlayer();
game.placeMark(1, 0);
game.changePlayer();
game.placeMark(1, 1);
game.changePlayer();
game.placeMark(1, 2);
game.changePlayer();
game.placeMark(2, 0);
game.changePlayer();
game.placeMark(2, 1);
game.changePlayer();
game.placeMark(2, 2);
assertTrue(game.isBoardFull());
}
//Kontrollib vitjat veerus, kui vljad on thjad ning prast, kui veerus on vitja
@Test
public void checkColumnsForWinTest() {
TicTacToe game = new TicTacToe();
assertFalse(game.checkColumnsForWin());
game.placeMark(0, 0);
game.changePlayer();
game.placeMark(0, 1);
game.changePlayer();
game.placeMark(1, 0);
game.changePlayer();
game.placeMark(0, 2);
game.changePlayer();
game.placeMark(2, 0);
assertTrue(game.checkColumnsForWin());
}
//Kontrollib vitjat reas, kui vljad on thjad ning prast, kui reas on vitja
@Test
public void checkRowsForWinTest() {
TicTacToe game = new TicTacToe();
assertFalse(game.checkRowsForWin());
game.placeMark(0, 0);
game.changePlayer();
game.placeMark(1, 0);
game.changePlayer();
game.placeMark(0, 1);
game.changePlayer();
game.placeMark(2, 0);
game.changePlayer();
game.placeMark(0, 2);
assertTrue(game.checkRowsForWin());
}
//Kontrollib vitjat diagonaalis, kui vljad on thjad ning prast, kui diagonaalis on vitja
@Test
public void checkForWinDiagTest() {
TicTacToe game = new TicTacToe();
assertFalse(game.checkForWin());
game.placeMark(0, 0);
game.changePlayer();
game.placeMark(1, 0);
game.changePlayer();
game.placeMark(1, 1);
game.changePlayer();
game.placeMark(2, 0);
game.changePlayer();
game.placeMark(2, 2);
assertTrue(game.checkForWin());
}
//Kontrollib ldfunktsiooni, mis kontrollib vitjat igat pidi. Kontrollib, et see leiaks vitja veerus
@Test
public void checkForWinColTest() {
TicTacToe game = new TicTacToe();
assertFalse(game.checkForWin());
game.placeMark(0, 0);
game.changePlayer();
game.placeMark(1, 0);
game.changePlayer();
game.placeMark(0, 1);
game.changePlayer();
game.placeMark(2, 0);
game.changePlayer();
game.placeMark(0, 2);
assertTrue(game.checkForWin());
}
//Kontrollib ldfunktsiooni, mis kontrollib vitjat igat pidi. Kontrollib, et see leiaks vitja reas
@Test
public void checkForWinRowTest() {
TicTacToe game = new TicTacToe();
assertFalse(game.checkForWin());
game.placeMark(0, 0);
game.changePlayer();
game.placeMark(1, 1);
game.changePlayer();
game.placeMark(1, 0);
game.changePlayer();
game.placeMark(2, 1);
game.changePlayer();
game.placeMark(2, 0);
assertTrue(game.checkForWin());
}
//Kontrollib mngijavahetust. Esimene mngija on "x", teine "o"
@Test
assertTrue(game.placeMark(2, 2));
assertFalse(game.placeMark(2, 2));
}
//Kontrollib, et diagonaalidest vasakult paremale leitaks vitja
@Test
public void checkDiagonalsForWinTest1(){
TicTacToe game = new TicTacToe();
assertTrue(game.placeMark(0, 0));
assertTrue(game.placeMark(1, 1));
assertTrue(game.placeMark(2, 2));
assertTrue(game.checkDiagonalsForWin());
}
//Kontrollib, et diagonaalidest paremalt vasakule leitaks vitja
@Test
public void checkDiagonalsForWinTest2(){
TicTacToe game = new TicTacToe();
assertTrue(game.placeMark(2, 0));
assertTrue(game.placeMark(1, 1));
assertTrue(game.placeMark(0, 2));
assertTrue(game.checkDiagonalsForWin());
}
//Kontrollib, et vitja leidub reas vi veerus, kui jrjest on, kas xxx vi ooo.
@Test
public void checkRowColTest(){
TicTacToe game = new TicTacToe();
assertTrue(game.checkRowCol('x', 'x', 'x'));
assertFalse(game.checkRowCol('x', 'x', 'o'));
assertTrue(game.checkRowCol('o', 'o', 'o'));
assertFalse(game.checkRowCol('o', 'o', 'x'));
assertFalse(game.checkRowCol('x', 'o', 'x'));
Veebipoe-TestSummaryReport
Kokkuvte
Krvalekaldumised
Phjalikkuse hinnang
Tulemuste kokkuvte
Leitud vead olid enamasti vikesed ja seotud vlise API vi aegunud brauseriga.
Kll aga avastasime veebilehe operatiivsuse kohase vea, milleks oli tsiasi, et veebileht ei
kohandu viksemate ekraanidega vga hsti, mis tekitab probleeme mobiilis veebilehe vaatamise
ja arvutis aknasuuruse muutmisel.
Mobiilis veebilehe kasutamisel tekkinud probleemid peaksid olema ettevttele krge prioriteediga,
kuna tnapeval toimub suur osa netiliiklusest just mobiilis ja mobiili vahendusel on vimalik ka
pangateenuseid kasutada, ehk antud viga mjutab otseselt ettevtte rilisi perspektiive.
Hinnang
Tegevuste kokkuvte
10.2
Allkirjad: Siim Lukas - 134287 IABB52, Reimo Vellemaa - 135163 IABB53, Gert
Sumeri - 134318 IABB53
Projektis saadud kogemuse anals.
Vaadates projektile tagasi testija seisukohalt, siis oli projekti headeks klgedeks kindlasti projekti
hoomatavus, olime saanud likoolist pris hea phja, et mida ja kuidas peaksime ssteemi puhul
testima ja meie grupit sujus ka trgeteta ja ksteist tiendavalt. Kui peab leidma tehtud vigu,
siis tooks vlja selle, et alustuseks oleks pidanud esimese asjana kogu etteantud
abidokumentatsiooni lbi lugema, mida kll tegime aga t kigus tkiti.
Kontrolli ja hindamise meetodid on meie arvates sobilikud ja neid ei tuleks muuta.
10.3
Kirjanduse loetelu
http://www.1a.ee/
http://tepandi.ee/tks-loeng.pdf
http://tepandi.ee/tks-korraldus.pdf
https://mitmekylgsus.wordpress.com/2014/07/19/kasutajalood-mittefunktsionaalsednouded-ja-arakasutajalood/
https://et.wikipedia.org/wiki/Tarkvara_testimine