Laste ned presentasjonen
Presentasjon lastes. Vennligst vent
PublisertVictor Tønnessen Endret for 9 år siden
1
Kontinuerlig kvalitetskontroll
2
Hvordan komme helt i mål
3
© Steria About the speaker Johannes Brodwall Chief Scientist, Steria Arrangerer Oslo XP meetup Arrangerer Smidig 2008 Blog: http://johannesbrodwall.com/http://johannesbrodwall.com/.meetup.com/13
4
© Steria Hva er poenget med kontinuerlig integrasjon?
5
© Steria Invester i dag for å unngå defekter Invester mindre for å sette i produksjon Lever når som helst
6
© Steria Hva er kontinuerlig integrasjon?
7
© Steria
10
Enhetstester Funksjonelle tester Systemet kjøres i et testrammeverk
11
© Steria Resultatet:
12
© Steria Hver innsjekking blir testet
13
© Steria
14
Spørsmål:
15
© Steria Vil dette finne alle defektene i systemet?
16
© Steria Nei!
17
© Steria Kun de som blir kjørt i testrammerverket Kun de vi tenkte på Og så er det ytelsestesting…
18
© Steria Så: Hva må bør vi gjøre?
19
© Steria (Hint: CI handler om å investere nå i stedet for senere)
20
© Steria Invester mer nå!
21
© Steria Min løsning: Automatisert systemtest
22
© Steria (Egentlig: Automatisert regresjonstest på integrasjon- og systemtestnivå)
23
© Steria Vi ønsker:
24
© Steria Realistisk konfigurasjon Realistisk belastning Realistisk variasjon
25
© Steria
26
Hvordan automatisere systemtest 1.Automatisk bygg (og enhetstest) 2.Rens opp gammel data 3.Last ned siste versjon 4.Hent produksjonsdata 5.Spill av produksjonsdata 6.Sjekk resultatet 7.Send resultat via email
27
© Steria ”Støtte du på problemer?”
28
© Steria Nei
29
© Steria Nei, egentlig ikke Bare noen utfordinger!
30
© Steria Hva var vrient? 1.Installasjon 2.Integrasjon 3.Simulering 4.Verifisering
31
© Steria Installasjon
32
© Steria Automatiser installasjon 1.Scriptet, reproduserbar install 2.Forenkling (Erstattet WebSphere med Jetty) (Så sammen komponenter) 3.Reduser integrasjonsbehovet 4.Identiske noder
33
© Steria (Sidevirkninger) Forenkler installasjonsrutinene Forenkler designet Forenkler overvåking
34
© Steria Integrasjon
35
© Steria Integrasjon Hva med avhengigheter?
36
© Steria Forenkle integrasjon 1.Ikke integrer, gjør det sjæl 2.Simulerer det andre systemet 1. Simulerte svar 2. Ta vare på data(data centric) 3.Integrer med testversjon
37
© Steria Simulering
38
© Steria Simulering Utsett systemet for realistisk last
39
© Steria Simulering Svært systemavhengig
40
© Steria Simuler produksjon I vårt tilfelle: Filer Crawler (Dyrkorn & Watne) Lastgenerator (D&W) Ta opp og spill av HTTP requester
41
© Steria Verifisering
42
© Steria Verifisering Gikk det bra?
43
© Steria Verifisere resultatet Sammenlign med produksjon Se på logger Se på dataintegritet
44
© Steria Avstemming 1.Lagre testresultatet i database 2.Lagre produksjonsresultat i basen 3.Full outer join på naturlige nøkler 4.Finn manglende eller avvikende 5.Filtrer ut kjente avvik
45
© Steria
46
Dato
47
© Steria Antall filer
48
© Steria Okay
49
© Steria Mangler
50
© Steria Ekstra
51
© Steria ExtraAvviker
52
© Steria Extra Kjente unntak
53
© Steria Konsistenssjekk SQL uttrykk som plukker ut rare data
54
© Steria Logging Pass på loggingen Feillogger må være tomme når det ikke er feil
55
© Steria (Fint for drift)
56
© Steria Resultat:
57
© Steria Hver bygg blir systemtestet
58
© Steria
59
Vil dette avdekke alle feil?
60
© Steria Neida
61
© Steria Forenklet integrasjon Kjører ikke lenge nok Er det driftbart?
62
© Steria Hva nå? Automatisert preproduksjon
63
© Steria Hva nå? Automatisert preproduksjon
64
© Steria Preproduksjon Kjører ”neste” versjon Kjører i tandem med prod En uke: Forfremmes til prod Overvåkes 9:00-16:00
65
© Steria
67
Først når du tenker som en drifter, kan du mestre systemet
68
© Steria Resultat:
69
© Steria Hver leveranse herdes
70
© Steria
71
Vil dette avdekke alle feil?
72
© Steria Svaret er fortsatt nei
73
© Steria Er kravene riktig? Gleder løsningen brukerne? Endrer brukeren oppførsel? Feide vi noe under teppet?
74
© Steria Målet: Lever etter hver iterasjon
75
© Steria
76
Den triste sannhet: Pilotproduksjon etter hver iterasjon
77
© Steria Pilot production
78
© Steria Hvorfor levere etter hver iterasjon?
79
© Steria Utnytt muligheter Finn flere feil Prøv den enkleste løsningen først Finn nye krav raskere
80
© Steria Levér verdi til brukerne!
81
© Steria Resultat:
82
© Steria Finn feil billigst mulig
83
© Steria Alltid klar til leveranse
84
© Steria Invester mer nå, mindre senere
85
© Steria Målet: Lever etter hver iterasjon
86
© Steria (Og da kan du kaste bugtrackeren)
87
© Steria Takk for oppmerksomheten!
Liknende presentasjoner
© 2024 SlidePlayer.no Inc.
All rights reserved.