F4 Flashcards
Vad är test?:
Test är processen att exekvera ett program med syfte att hitta fel
Test är att ställa frågor till ett testobjekt och jämföra svaren med ett facit för att avgöra om en viss aspekt av objektet fungerar som avsett
Varför testa?
- Varje organisation är unik, testa
att systemet passar
organisationen - Ändringar kan vara gjorda i
systemet, vilka behöver testas
Vad behöver testas?
- Konfigurationer, affärssystem
anpassas alltid - Integrationer, affärssystem
integreras ofta med andra
system - Data migration, implementation
av affärssystem involverar ofta
migration av data från andra
system
(minst alla ändringar som genomförs av standardsystem behöver testas)
När behöver test genomföras?
- Implementations (hos kund) -
grundkonfiguration - Modifieringar vid förvaltning av
systemet, affärssystemet kan
behöva modifieras med jämna
mellanrum (Ex vid lagändringar
eller andra regeländringar) - Uppgraderingar av systemet
(från leverantör)
Parameterization/customization
Adjusting the system’s functionality and data structures by setting values of predetermined system parameters.
Add-ons/Bolt-ons
Implementation of third-party standard package designed to work with ERP system and provide industry-specific functionality.
Extension points
Extending the system’s functionality through custom code hooked into predefined places (extension points) of the ERP system’s code.
ERP Programming
Programming of additional applications within the ERP system, without changing the source code (using the computer language of the vendor).
Extension module
Code-based development of new components outside the ERP system. New components provide functionality not available in the standard system.
API
Programming to application programming interfaces (API:s) to legacy systems or 3rd party products. Integration.
ERP code modification
Changing the ERP source-code ranging from small change to change whole modules.
Typer av fel
Funktionella fel:
- exekveringsfel (“krasch”)
- Logiskt fel (felberäkning)
- Integrationsfel
Icke-funktionella fel:
- Låg prestanda
- Brister i säkerhet
- Dålig användarbarhet
Sekventiella utvecklingsmodeller:
- Uppbyggda av ett antal faser
som utförs i en viss ordning
- En fas påbörjas när en
föregående fas avslutas
Ex. vattenfallsmodellen
V-modellen: Krav
Krav:
- Användarnas krav på systemet
- Kravspecifikation
- Vad systemet ska stödja
→
Acceptanstest (Testare och Kund/användare):
- Uppfyller den levererade
mjukvaran kraven i
kravspecifikationen
- Möter systemet kunden krav
(validering)
-Utförs vanligtvis av kunden
- Systemet testas vanligtvis i
kundens miljö
V-modellen: Systemdesign
Systemdesign:
- Krav omformas till en
systemspecifikation
(designspecifikation)
→
Systemtest (Utvecklare, Testare och Kund/användare):
- Testa hela systemet
funktionalitet
- Verifiera att systemet motsvarar
designspecifikationer
- Testa att systemet fungerar som
en helhet från användarens
perspektiv
V-modellen: Arkitekturdesign
Arkitekturdesign:
- Specifikation av systemet
arkitektur (dess delar)
- Systemdesign bryts ned i
moduler
- Moduler och deras gränssnitt
- Högnivådesign
→
Integrationstest (Utvecklare):
- Säkerställ att samtliga moduler i
systemet fungerar ihop
- Integrationer/gränssnitt mellan
moduler (enheter) testas. (EJ
integration av externa system)
V-modellen: Moduldesign
Moduldesign:
- Design av moduler (enheter)
- Klasser och relationer inom
moduler
- Förbered för utvecklarna
- Lågnivådesign
→
Enhetstest (unit tests (Utvecklare)):
- Minsta testbara delarna i
systemet testas
- Utförs av vanligtvis
programmerare
Vad är negativt med V-modellen?
- Kan ta väldigt lång tid mellan
stegen - Väldigt mycket dokument
Vad är iterativa utvecklingsmodeller?
Utveckling i kortare sekvenser (iterationer)
Ex agila metoder (agil & testdriven utveckling TDD)
Vad är testdriven utveckling och vad är processen?
- Exekverbara tester skrivs innan kod
- Automatiserad körning av tester
- Gruppering av tester i testsviter som kan testa delar eller hela system
- Designa nytt test
- Exekvera test (det ska fallera)
- Programmera
- Exekvera test
- Förbättra (refactor) kod när testen går igenom
Negativt: Riskerar att fokusera på små, snabba tester som inte testar helheten.
Design av tester vid testdriven utveckling
F.I.R.S.T:
- Fast, Tester ska vara snabba att köra
- Independent & Repeatable, Ska kunna köras fristående
- Self-validating, Ska enbart resultera i rött eller fel. Resultatet ska inte behöva tolkas
- Timely, Gör testkoden först, sedan systemimplementationen
Verifiering (leverantör/konsult)
Tester som syftar till att visa att systemet är rätt konstruerat. Under enhetstest görs mån ga verifieringsaktiviteter.
Validering (kund)
Tester som syftar till att visa att rätt system är konstruerat. Under acceptanstest görs många valideringsaktiviteter.
Testfall
Beskriver hur en del av systemet kan testas genom att genomföra en testprocedur. Innehåller:
- ID
- Namn
- Syfte, vad som behövs innan testet startar
- Testdata, data som behövs för test, data kan även inkluderas i testprocedur
-Testprocedur, stegvis beskrivning inkl förväntat resultat
Test av verksamhetsprocesser
Testa att affärssystemet stödjer företagets verksamhetsprocesser:
- Standardprocesser
- Undantag/specialfall (för god kodtäckning)