Testrapport - Visualisering/Visualisering GitHub Wiki
##Testfall
###Detta är en sammanställning av hela testsviten. Tanken är att denna sammanställs i slutet av projekttiden. Under varje iteration finns de löpande utförda testerna som ligger till grund för sammanställningen.
Backend
Kravnr | TestId | Testfall | Testmetod | Indata | Utfall | Godkänt datum | Testare |
---|---|---|---|---|---|---|---|
1 | 1 | Metoden ska returnera en stad om studenten finns | automatiserat, kör npm test | en existerande student, JSON-fil med studenter | en stad returneras | 11/2, 8/3 | JS, AI |
1 | 2 | Metoden ska returnera en default stad om studenten inte finns | automatiserat, kör npm test | en icke existerande student, JSON-fil med studenter | default stad returneras | 7/3 | JS |
1 | 3 | Metoden ska returnera lat och long från openstreetmap API | automatiserat, kör npm test | url till OSM + stad | positionsobjekt med lat och long | 4/2, 7/3 | AI, AI |
1 | 4 | Metoden ska returnera en default lat och long om värdena från openstreetmap inte är korrekta | automatiserat, kör npm test | en icke existerande stad, JSON-fil med städer | default lat och long returneras | 8/3 | JS |
1 | 5 | Getrequest mot github api ska returnera data från commits | automatiserat, kör npm test | url + reponamn + användarnamn , repon fördefinierade i repos.json | varje commit har timestamp, comitter, message, comitted files | 29/2, 9/3 | JLC, JLC |
1 | 6 | Getrequest mot github api ska returnera kod från specifik commit | automatiserat, kör npm test | url + filnamn | kod från ändrad fil i commit som en base64 sträng | 9/3 | JLC |
2 | 7 | Skicka data till klient med websockets vit githubgetrequest | Att sockets skickar data testas med ett browser plugin | socket.io | klienten får ny data varje gång servern startas om eller vid ett shemalagt event | 11/2 | AI |
2 | 18 | Skicka data till klient med websockets vid webhook event | Att sockets skickar data testas med ett browser plugin | socket.io + en manuell push till repo i organisationen, organistationen måste ha en aktiv webhook | klienten får ny data varje gång webhooken skickar en post till endpoint /commit | 3/3 | AI |
1 | 19 | Github webhook skickar post till endpoint /commit när det pushas till ett repo i organisationen | en temporärt publicerad app med hjälp av ngrok, console.log vid endpoint | manuell push till aktuell organisation | data med information om pushen i realtid | 25/2 | JS |
2 | 20 | Redux statetree uppdateras vid en post från gihut webhook | console.log(action) i app.js | manuell push till aktuell organisation, aktiv webhook | data med information om pushen i realtid | Array med positioner array med commits | 2/3 |
2 | 21 | Redux statetree uppdateras vid en get request till github | console.log(action) i app.js | starta om servern | Array med positioner array med commits | 2/3 | JS, AI, JLC |
2 | 22 | Redux statetree innehåller upp till 100 senaste commits och är sorterade efter timestamp | console.log | starta om servern | Pass | 4/3 | AI |
Frontend
Kravnr | TestId | Testfall | Testmetod | Indata | Utfall | Godkänt datum | Testare |
---|---|---|---|---|---|---|---|
3 | 10 | Ta emot data från servern | Kontrollera indata visuellt | Dynamisk | Data blir skickad | 17/3 | RK |
4 | 13 | Rendera position på jordglob | Visuell bekräftelse | lat + long | jordgloben plottar ut positionerna på någorlunda rätt plats | 4/2 | RK |
4 | 23 | Commit rör sig mot jorden | Visuell bekräftelse | timestamp | äldre commits är svagare än nyare | 17/3 | RK |
4 | 14 | Position blir svagare ju äldre commit är | Visuell bekräftelse | timestamp | äldre commits är svagare än nyare | 4/2 | RK |
5 | 15 | Potentiellt skadlig kod oskadligörs | commitkod | "escapad" kod som inte körs | |||
funktionellt 4 | 17 | Applikationen ska kunna köras på en skärm under längre tid utan omstart. | Visuell bekräftelse | Snurrar 4h utan synliga problem | 25/2 2016 | RK |
Övergripande
Kravnr | TestId | Testfall | Testmetod | Indata | Utfall | Godkänt datum | Testare |
---|---|---|---|---|---|---|---|
6, Kvalitetskrav 2 | 16 | Uppdatering av data kraschar inte visualiseringar | Besök hemsida med heroku dynos i viloläge, vänta på att klient vaknat, vänta på att server svarat med data. | Den nya datan börjar användas | 21/3 | RK |
Systemtester
Vi har kontrollerat att indata vs utdata stämmer överens. Dvs flödet websockets och visualisering. Stresstester är utförda på backend. Inga problem att hämta 500 senaste commits i ett svep via getrequest till Github. Inga problem för servern att ta emot 10 webhook posts inom ett väldigt kort tidspann. Servern skickar ett 500 svar vid serverproblem. Inget hakar upp sig vid problem med att nå Githubs eller Open street maps api. Antingen används default data eller den data som redan finns i statetree.