Innholdsfortegnelse. 1. Testing Feiltesting av koden Funksjonstesting: Kilder.10

Like dokumenter
Test Beskrivelse Resultat Innhenting CBIS Programmet mottar data fra CBIS OK, men kun. Innhenting Tellus Programmet mottar data fra Tellus OK

Testrapport Prosjekt nr Det Norske Veritas

Eventhandler Teknologi, kunst og design Høgskolen i Oslo og Akershus, våren Testrapport

S y s t e m d o k u m e n t a s j o n

User Input / Output Handling. Innocent Code kap 3-4 INF-329 Øystein Lervik Larsen oysteinl@ii.uib.no 7/11-05

Testrapport for Sir Jerky Leap

Brukerveiledning for ArkN4

Administrator guide. Searchdaimon ES (Enterprise Server)

Gruppe prosjekt del 3. INFO134 Klientprogrammering Vår 2017 Kandidatnummer: 304, 298

Debugging. Tore Berg Hansen, TISIP

GJENNOMGANG UKESOPPGAVER 9 TESTING

Testdokumentasjon Presentasjon

Brukerdokumentasjon. Webservices og webklient for kodeverk/ kodeverdi verifisering

IN2000. Gjennomgang av tekniske oppgaver på prøveeksamen. Erlend Stenlund og Steffen Almås + innspill fra Gaute Berge

3.3 Case 3: Opprette en bruker Case 4: Endre en bruker... 8

Hurtigstart guide. Searchdaimon ES (Enterprise Server)

Hvordan setteopp en wordpress site med wampserver. Lokal site på din pc.

GraphQL. Hva, hvorfor, hvordan

Oblig 5 Webutvikling. Av Thomas Gitlevaag

6105 Windows Server og datanett

3 Filstruktur. Slik ser filstrukturen til applikasjonen ut når den er lagt ut på server eller når den er deployet.

Scan Secure GTS PAS

Kapittel 13 Advanced Hypertext Implementation. Martin Lie Ole Kristian Heggøy

Http- og WebServices funksjoner

Brukerveiledning for Aptopappa. Brukerveiledning for ny funksjonalitet i Aptopappa

Kunden er en av Norges ledende leverandører av digital-tv og bredbåndstjenester.

6105 Windows Server og datanett

Kravspesifikasjon MetaView

System Dokumentasjon. Team2. Høgskolen i Sørøst-Norge Fakultet for teknologi, naturvitenskap og maritime fag Institutt for elektro, IT og kybernetikk

TESTRAPPORT Tittel på hovedprosjektet: Varebestillingssystem for Wokas Salg AS

Compello Invoice Approval

Intentor Helpdesk - Installasjon Step #3: Microsoft Reporting Services

KRAVSPESIFIKASJON FORORD

Hovedprosjekt våren 2007

Hangman. Level. Introduksjon

Kravspesifikasjon Hovedprosjekt ved Høgskolen i Oslo Våren 2008

Oppsummering. Thomas Lohne Aanes Thomas Amble

6105 Windows Server og datanett

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

Grunnleggende testteori

Brukermanual for administrasjonsverktøy Gruppe: 08-03

Konfigurasjonsstyring. INF1050: Gjennomgang, uke 11

Feilsøking i BO. Olav Syse, konsulent. Jan Terje Hansen, service manager. Be business intelligent

Testdokumentasjon (Test Documentation)

4.1. Kravspesifikasjon

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 7 Filer og unntak ( exceptions ) Professor Alf Inge Wang Stipendiat Lars Bungum

1. INNHOLDSFORTEGNELSE

Dagbok. Januar. Uke 2 ( ) Uke 3 ( ) Uke 3 (17.01, 12:45-14:00)

Akseptansetest av mottak Rekvirering av medisinske tjenester Medisinsk biokjemi

PERSONVERN, GDPR OG COREPUBLISH

Testrapport. Aker Surveillance. Gruppe 26. Hovedprosjekt ved Høgskolen i Oslo og Akershus. Oslo, Public 2013 Aker Solutions Page 1 of 5

Innhold RDP... 2 Oppkobling Kirkedata... 2 Flere brukerpålogginger til Kirkedata... 6

Akseptansetest av mottak Svarrapportering av medisinske tjenester Immunologi

Erlend Oftedal. Risiko og sikkerhet i IKT-systemer, Tekna

HØGSKOLEN I OSLO OG AKERSHUS. FôrIt CDS. Testrapport

1: Steng ned alle MAB på alle maskiner før dere starter oppdateringen. Dette gjelder også MAB Schedule som dere vil finne på serveren.

Sikkerhet i Pindena Påmeldingssystem

Forprosjektrapport. Gruppe 26. Digitalt læreverktøy for Cappelen Damm

Akseptansetest av sending og mottak Applikasjonskvittering

Controller Brukerstøttedatabase Ottar Holstad/Cantor 09.

Team2 Requirements & Design Document Værsystem

6105 Windows Server og datanett

Oppsummering fra sist

Lotus Traveler - Manual for installasjon

Planlegging/forprosjekt:

A tool for collaborating to success in a development project Experience with Visual Studio 2010 and Test Manager at Lånekasse

Med løkke: Læringsmål og pensum. TDT4110 Informasjonsteknologi grunnkurs: Tema: Løkker/Sløyfer Utgave 3: Kap. 4 Utgave 2: Kap. 5. Mål.

Hovedprosjekt. Høgskolen i Oslo data/informasjonsteknologi våren 2011 Forprosjektrapport. K-skjema og ferie kalender

Innhold RDP... 2 Oppkobling Kirkedata... 2 Flere brukerpålogginger til Kirkedata... 6

Use case modellen. Use case modellering i analysefasen. Hva er en Aktør? Hva er et Use case? Use case modellering. Eksempel

Introduksjon til programmering og programmeringsspråk. Henrik Lieng Høgskolen i Oslo og Akershus

CORBA Component Model (CCM)

YouTube-kanal ITGK. Læringsmål og pensum

Læringsmål for forelesningen

Veileder for innføring av geosynkronisering av plandata

Introduksjon til programmering og programmeringsspråk

LocalBank Prosjektbeskrivelse

Dagens tema. Hva er kompilering? Anta at vi lager dette lille programmet doble.rusc (kalt kildekoden): Hva er kompilering?

INF Obligatorisk innlevering 7

6105 Windows Server og datanett

Generiske mekanismer i statisk typede programmeringsspråk

Feilmelding Årsak Løsning

SRD GLIS. Cecilie Dortea Gløsmyr, Espen Buø og Henrik Lie

References Hovedprosjekt ved Høgskolen i Oslo 2010 Testrapport

Ta kontakt i pausen. Viktig at vi kommer i gang med dette arbeidet!

6105 Windows Server og datanett

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Akseptansetest av mottak Svarrapportering av medisinske tjenester Mikrobiologi

Denne rapporten er beregnet for dataansvarlig på Grefsenhjemmet, den som skal installere, vedlikeholde og modifisere systemet.

I databasen ligger det over 100 tabeller. De henger sammen dels via synlige koder, dels via usynlige interne ID-er. De ser man normalt bare når det

6105 Windows Server og datanett

TDT4110 Informasjonsteknologi grunnkurs: Tema: Enkle funksjoner. - 3rd edition: Kapittel Professor Alf Inge Wang

FS-API Status og veien videre. Kai Quale og Mario Ledinscak KDTO

PXE, nett og nettprotokoller. USIT/SAS/LIPK, Marko Andjic, Overingeniør

Akseptansetest for mottak av administrativ kommunikasjon mot kjernejournal

6. Matching faktura mot ordre DFØ

Kravspesifikasjon Gruppe nr ABTF

TDT4110 Informasjonsteknologi grunnkurs: Tema: Mer om strenger. - 3rd edition: Kapittel 8. Professor Alf Inge Wang

TESTRAPPORT - PRODSYS

Phone Assistant. Arne-Jørgen Auberg

Transkript:

1

Innholdsfortegnelse 1. Testing... 3 1.1 Feiltesting av koden... 3 1.2 Funksjonstesting:... 7 2. Kilder.10 2

1. Testing Testing av et system er nødvendig for å finne ut om systemet fungere slik det skal og har nådd sitt mål. Vi har gjennomført ulike typer tester ved bruk av ulike metoder både under utvikling og etter det. 1.1 Feiltesting av koden Utviklingen av systemet bestod av flere iterasjoner. Programkoden ble testet underveis i hver iterasjon. Metoder og tekniker vi har brukt for å finne og rette eventuelle feil og svakheter i kildekoden og de ulike typer feil, som oppstod under utvikling av systemet og måten vi har løst de utfordringene beskrives under. Formål: Formålet met kodetesting var at å sjekke hver impementerte funksjon fungerer på riktig måte. Testområde: hele systemet Verktøy: Visuellstudio 2013, nettleser, Postman Teknikker: Vi har benyttet forskjellige teknikker og verktøyer for feilsøking under utviklingen blant annet Runtime tilbakemeldinger, Exceptions, Break pointing og IntelliSense. Runtime error og exception Under kompilering av kodelinje for å teste en funksjon eller et spesifikk view, opplever man at applikasjonen stopper. Når du kjører, er den lagrede informasjonen kontrollert, og eventuelle erklæringer som ikke er gyldig, ender du opp med en run-time exception. Slike informative feilmeldinger gir utvikleren informasjon om hvilken type feil og hvor feilen ligger. Det er ikke alle Exceptions som for eksempel NullReferenceException, som er ikke nok beskrivende og det er mange feil som kan skje under kjøring av metoder. Ved hjelp av Break pointing er det ikke så vanskelig å finne og rette opp slike feil. 3

Breakpoints : Teknikken å stoppe kjøring av programmet i et bestemt punkt, kan være veldig effektivt for å finne feil plassering. Man kan sjekke verdiene til lokale variabler og se hva som skjer linje for linje. Slik er det enklere å finne årsaken til at programmet ikke fungerer (Developer Network, udatert). IntelliSense: IntelliSense er en kraftig funksjon som i betydelig grad kan øke produktiviteten, fordi det gir logiske kode elementer, som man kan velge fra en rullegardin meny når man koder. Den er designet for å gjøre utviklingen mye enklere ved å foreslå hvilke funksjoner som passer. Den utfører også automatisk feilretting mens man skriver ved å streke under feil eller gi forslag til endringer. Denne prosessen kan redusere tiden man bruker på skriving og for å unngå skrivefeil i koden (Developer Network, udatert). 4

Postman: Postman er en REST Client som er et veldig nyttig verktøy for å teste funksjonaliteten under utviklingsprosessen. Postman kan dramatisk redusere tiden å teste APIer. Postman tilpasser seg for individuelle utviklere, små grupper eller store organisasjoner like godt. Den støtter 11 ulike HTTP-metoder blant annet Get, Post, Put og Delete som blir mest brukt under utvikling. Den støtter både JSON og XML format (Ullnæs, 2013). Alle Controller arver ApiController og ApiController klassen er base klasse av web API kontrolleren som inneholder samme metoder som http, det vil si, Get (for å få resurser), Post (for å legge til resurser), Put (for å oppdatere resurser) og Delete (for å fjerne resurser) For å sende en kall, kjører man prosjektet og fyller inn en URL i postman, velger en httpmetoden blant annet, Get, Post, Put eller Delete. Etter å trykke på send får man resultatet av kallet i form av Pretty, Raw eller Preview. I vår tilfelle, et eksempel på URL for å liste alle serverne er http://localhost:55355/servers/ og for hver enkel server kommer serveren sin id i slutten, for eks.: http://localhost:55355/servers/1043 5

Hver forespørsel man sender ved hjelp av Postman blir lagret i historien og kan brukes senere. Man kan lagre forespørsler om en API sammen i Collections. Vi har brukt Postman til å teste verdier vi vet skal fungere, som id'en til et visst objekt. Vi har også testet på id'er vi vet ikke finnes for å bekrefte et "null" resultat. Vi har også testet verdier vi vet ikke passer inn i typen, for eksempel et tall som er større enn en integer for å sjekke at vi får forventet oppførsel fra systemet 6

1.2 Funksjonstesting: For å sikre at de funksjonelle kravene ble oppnådd har vi gjennomført en funksjonstesting. Her under vises en liste over de viktigste kravene samt tester og kommentarer. Krav Testresultat Kommentar Systemet skal kunne hente info om status på tjenester tjenester på en server via WMI Systemet skal kunne hente informasjon om server objekter fra Active Directory Ok, vi mottar status på tjeneste fra WMI Ok, vi mottar alle serverobjekter som matcher den insendte RegEx verdien Her har vi selvsagt ikke testet mot hver server, men gjort et lite utvalg og testet med metoden GetServiceStatus fra WmiAccessTest klassen Testet med metoden GetServersTest i klassen AdAccessTest Systemet skal kunne fungere på tvers av soner (domener) fra et sentralt system Ok, vi kan aksessere et domene fra et annet domenet. Vi har testet mot et domenet. Testmaskinen ble plassert i et annet domenet Systemet skal kunne opprette restartjobber Systemet skal kunne kontrollere servere etter boot via WMI Ok, Metoden oppretter de jobber som skal opprettes i det innsendte tidsrommet Ok Testet fra metoden CreateJobsTest i JobManagerTest klassen Vi har testet TestWmiConnection metoden mot et utvalg 7

servere Systemet skal kunne sende meldinger til påloggede brukere før restart. Brukeren skal kunne legge inn eksisterende regler på nye servere Brukeren skal kunne se og søke i server logg Brukeren skal kunne søke etter servere og se hvilke regler som treffer den N/A Ok N/A Regler velger hvilke servere som booter utifra en RegEx verdi, nye servere vil automatisk bli tatt med i regler dersom noen treffer. Ved å trykke på logg i serverlisten får man opp en logg liste for den serveren med et søkefelt Ikke implementert Brukeren skal kunne opprette nye regler for restart og sjekk av tjenester etter restart Bruker skal ikke kunne opprette en regel uten å spesifisere navn og regex Ok Ok. Regler kan opprettes via regel siden Det gis en melding i brukergrensesnittet dersom man forsøker å legge inn en ugyldig regel. Spesifiserer man ajax kallet selv er egen input 8

Brukeren skal kunne legge til og fjerne mottakere av dagsrapport Systemet skal kunne generere en daglig rapport med utgangspunkt i loggene. Denne skal formateres på en slik måte at det er lett og skaffe seg oversikt uten å bli overlesset med informasjon. N/A validering i modellen. Dette ble testet via Postman1 Det er implementert en rapportside istedenfor utsending av dagsrapport Dette har vi løst med widgets på rapportsiden som gir deg en oversiktover tilstanded til systemet og de siste utførte jobbene. 1 Postman er en verktøy som hjelper til å bli mer effektiv når man arbeider med APIer (Postman-REST client, 2014). 9

Kilder: Developer Network. (udatert a). Using IntelliSense: Visual C# IntelliSense. Hentet Mai 24. 2014 fra: http://msdn.microsoft.com/en-us/library/43f44291.aspx Postman REST Client. (2014). Beskrivelse: Postman helps you be more efficient while working with APIs. Postman is a scratch-your-own-itch project. The need for it arose Hentet Mai 25, 2014 fra: https://chrome.google.com/webstore/detail/postman-restclient/fdmmgilgnpjigdojojpjoooidkmcomcm/details Developer Network. (udatert b). Debugger Roadmap: Breakpoints and Tracepoints. Hentet Mai 24. 2014 fra: http://msdn.microsoft.com/en-us/library/ktf38f66(v=vs.90).aspx Ulnæs, Anders. (2013). Testing av REST-tjenester med Postman. Hentet Mai 25, 2014 fra: http://fagblogg.mesan.no/test-av-rest-med-postman/ 10