Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Developer Testing
- Love it or hate it?

SAST Stockholm Q4
Alexander Tarnowski
Om den annoterade versionen
Denna version av presentationen skiljer sig från
originalet genom att en del kommentarer lagts...
Jag förväntar
mig bra
kvalitet och att
det är klart
Lite är skrivet om testning
i samband med utveckling

Olika
förväntnin...
Temperature:

-A%¤?.

Litet värde:
grundläggande checking

Mera värde: använder vi
rätt komponent?

Än mer värde: är
mjukv...
1. Lära utvecklaren om testning:
– För att testa bättre
– Veta hur saker kommer att testas

2. Lära ut programmeringsprinc...
Teori & Terminologi
•
•
•
•

Grundläggande begrepp
Testnivåer och testtyper
Ord som slutar med ”test”
Agil testning

Alexa...
Brian Maricks testkvadranter visar mycket. Mest
intressant idag är testningens tvåfaldiga syfte:
verifiera och skapa trygg...
Testbarhet
Utvecklarens perspektiv
på testbarhet ör lite
annorlunda.

KÖRBARHET!
Observerbarhet

Isolerbarhet
Testbarhet

...
Kontrakt

Om man vid utveckling tänker på vilket kontrakt
en given komponent/klass/funktion uppfyller
blir koden mer testb...
Indata och beteende

Indirekt input
Temporal
koppling
Sidoeffekter

Domänstorlek
Alexander Tarnowski

x ∈ {1…10}
Enhetstestning
Hur många
assertions
per test?

Fake?
Stub?

Vad är ett
enhetstest
???

Constraint-based
assertions/
Matche...
Testdriven utveckling

Designteknik

Top-down

Tillstånd

Beteende

Bottom-up

Alexander Tarnowski
Vad utvecklartestning inte är
Verifiering av att teamet gör rätt sak
Testsessioner utförda av utvecklare
Användbarhets-, l...
Sammanfattningsvis

Kunskap om test och testbarhet

Koll på hantverket och verktygen

Genom att stärka utvecklaren inom te...
alexander.tarnowski@crisp.se
alexander_tar
Blog blog.crisp.se/author/alexandertarnowski
www www.techbookreader.com

Alexan...
Upcoming SlideShare
Loading in …5
×

Developer testing - Love it or hate it (in Swedish)

8,903 views

Published on

SAST Q4: Utveckartestning (annoterad)

  • Be the first to comment

  • Be the first to like this

Developer testing - Love it or hate it (in Swedish)

  1. 1. Developer Testing - Love it or hate it? SAST Stockholm Q4 Alexander Tarnowski
  2. 2. Om den annoterade versionen Denna version av presentationen skiljer sig från originalet genom att en del kommentarer lagts till i efterhand för att göra den mer läsvänlig. De ser ut som följande: Kommentar Alexander Tarnowski 2
  3. 3. Jag förväntar mig bra kvalitet och att det är klart Lite är skrivet om testning i samband med utveckling Olika förväntningar Sluta testa på dålig kod Testning är plåster på såret Utveckling Test Det finns en klyfta mellan det som utvecklas och det som testas Alexander Tarnowski Bristfällig testning av utvecklaren leder till att testningen måste fokusera på checking
  4. 4. Temperature: -A%¤?. Litet värde: grundläggande checking Mera värde: använder vi rätt komponent? Än mer värde: är mjukvaran användarvänlig? Mest värde: borde vi göra detta över huvud taget? Alexander Tarnowski 4
  5. 5. 1. Lära utvecklaren om testning: – För att testa bättre – Veta hur saker kommer att testas 2. Lära ut programmeringsprinciper som leder till ökad testbarhet Alexander Tarnowski
  6. 6. Teori & Terminologi • • • • Grundläggande begrepp Testnivåer och testtyper Ord som slutar med ”test” Agil testning Alexander Tarnowski
  7. 7. Brian Maricks testkvadranter visar mycket. Mest intressant idag är testningens tvåfaldiga syfte: verifiera och skapa trygghet. Alexander Tarnowski 7
  8. 8. Testbarhet Utvecklarens perspektiv på testbarhet ör lite annorlunda. KÖRBARHET! Observerbarhet Isolerbarhet Testbarhet Kontrollerbarhet Driftsättbarhet Ortogonalitet(?) Alexander Tarnowski
  9. 9. Kontrakt Om man vid utveckling tänker på vilket kontrakt en given komponent/klass/funktion uppfyller blir koden mer testbar. Detta gör att utvecklaren kan backa lite och betrakta sin egen kod som en svart låda, som uppfyller vissa villkor. Alexander Tarnowski
  10. 10. Indata och beteende Indirekt input Temporal koppling Sidoeffekter Domänstorlek Alexander Tarnowski x ∈ {1…10}
  11. 11. Enhetstestning Hur många assertions per test? Fake? Stub? Vad är ett enhetstest ??? Constraint-based assertions/ Matchers? Parametriserade tester Duplicering Alexander Tarnowski Namngivning Arv? Mock? Arrange, Act, Assert
  12. 12. Testdriven utveckling Designteknik Top-down Tillstånd Beteende Bottom-up Alexander Tarnowski
  13. 13. Vad utvecklartestning inte är Verifiering av att teamet gör rätt sak Testsessioner utförda av utvecklare Användbarhets-, last- eller säkerhetstestning Alexander Tarnowski
  14. 14. Sammanfattningsvis Kunskap om test och testbarhet Koll på hantverket och verktygen Genom att stärka utvecklaren inom testtekniker och testteori, samt stärka inom programmering som leder till ökad testbarhet, hoppas jag att kvaliteten på det som utvecklas höjs och att testningen börjar bortom checking. Alexander Tarnowski
  15. 15. alexander.tarnowski@crisp.se alexander_tar Blog blog.crisp.se/author/alexandertarnowski www www.techbookreader.com Alexander Tarnowski Feedback på såväl detaljer som grundantaganden uppskattas enormt!

×