Hvorfor bruke tid på testing ? "Use the Quicksave, Luke..." Full fart inn i et rom, kverk monstrene, trykk quicksave. Full fart inn i et rom, kverk monstrene, trykk quicksave. Full fart inn i et rom... Dø en tragisk død ... trykk quickload. Sørgelig, men "Quickload" og "Quicksave" befinner seg ofte ved siden av hverandre. Hva er værre enn å treffe feil tast etter at du døde, sånn at den teite PC’en saver liket På et øyeblikk er en hel kvelds hardt arbeid erstattet med nedelagets øyeblikk. As Luke Skywalker would say ... "NNnnnnoooooo-oooooo!"
- testing er å finne ut hvor bra ting virker Hva er testing ? - testing er å finne ut hvor bra ting virker - en prosess med planlegging, forberedelse og måling med hensikt å etablere / identifisere karakteristikken til et informasjonssystem og synliggjøre forskjellen mellom den ønskede og den faktiske status til systemet
Er hensikten oppnådd ? Testing reduserer usikkerhetsnivået angående it-systemets kvalitet.
Forviklinger med internett Vil du akseptere å fylle handlekurven med varer dagligvarebutikken, og så få beskjed at du, på grunn av feil i kassen, dessverre ikke kan få med deg varene? Hva vil du si til at butikken, til tross for denne feilen, fortsatt er åpen for kunder?
Mange vinklinger Test av GUI Test av funksjonalitet Test av integrasjon
Gyldne regler for gode grensesnitt Konsistens Snarveier Feedback Lukkede dialoger Enkel feilhåndtering / Mulig å ”angre” Bruker i kontroll Synlighet Defaultverdier Redusert bruk av Short Time Memory
Ambisjons nivå Enkle applikasjoner Bedriftsinterne applikasjoner Distribuert software Enkle web applikasjoner Kommersielle web applikasjoner Finn 90 % av feilene Hva er hensikten med applikasjonen ? Historikk : bedriftsinterne Apple. Tåler nedetid Dagens www er åpen 24 timer og døgnet, og neste vindu er bare et klikk borte Sikkerhet.
Hvordan teste ? Sette opp en teststrategi Lage testplaner Beskriv hvordan testen skal angripes og gjennomføres Lage testplaner Grov beskrivelser av hvem, hva, hvor og hvordan Tilpass til prosjekt og fremdriftsplaner
Teststrategi Testtyper Testdekning Fremgangsmåte Kriterier for godkjenning / underkjenning Krav til testmiljø Roller og ansvar Bemanning- og opplæringsbehov Framdriftsplan Risikomomenter
Testplan Testobjekter Testdekning Generell funksjonalitet Delprosjekt A Delprosjekt B (Tynn klient applikasjon) Testdekning Følgende egenskaper skal være dekket inn i testene Objekter og funksjoner som er unntatt fra test
Testplan forts Test av driftsmiljø Testteknikker Testverktøy Oppfølging av testobservasjon Klassifisering av testobservasjoner
Testteknikker Metoder for testing hånd testing manuell testing cognitive walktrouh ekspertpanel beta versjoner automatisert stress test load test
Testverktøy Mercury interactive Compuware Rational Software Sun Test
Testverktøy også for hjemmebruk http://www.softwareqatest.com/ http://www.testingfaqs.org http://www.methods-tools.com http://linkalarm.com/
Klassifisering av testobservasjoner Ikke-feil Problemet er relatert til f.eks. misforståelse/ feil i testspesifikasjon eller annet Kategori A kritisk feil / mangel som medfører full stopp, eller som er av en slik art at det ikke er mulig eller hensiktsmessig å fortsette test-/ verifikasjonsarbeidet før feil er utbedret. Kategori B alvorlig feil eller mangel, med men det er mulig å fortsette test- og verifikasjonsarbeidet uten alvorlig forringelse av påfølgende test- og verifikasjonsoppgaver. Kategori C feil som er av en slik art at de ikke er til hinder for bruk, fremdrift eller godkjennelse etter de foreliggende krav og kriterier.
Kriterier for godkjenning Testen er godkjent når følgende kriterier er oppfylt: alle testprosedyrer er gjennomført minst en gang alle kjente A og B feil er rettet og retestet eller avvist det er utarbeidet en sluttrapport for testen
Kriterier for underkjenning Testen skal underkjennes dersom: meldte observasjoner av kategorien A eller B feil ikke er rettet eller avvist innen akseptansetest Nye feil blir introdusert og ikke kan rettes opp
Testplan forts Retest og regresjonstest Gjennomføring av testen Testplanlegging og forberedelse Testgjennomføring Testavslutning Krav til testmiljø Testdata
Planlegg en test Finne fasit Beskrive detaljert hva som skal gjennomføres Gjennomføre testen Logge resultatet