• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Drupaljam Testing 20090626
 

Drupaljam Testing 20090626

on

  • 700 views

Sinds drupal 7 is de module simpletest geintegreerd in core. Door het maken van een core patch wordt het nut en de globale werking duidelijk gemaakt van unit testing.

Sinds drupal 7 is de module simpletest geintegreerd in core. Door het maken van een core patch wordt het nut en de globale werking duidelijk gemaakt van unit testing.

Statistics

Views

Total Views
700
Views on SlideShare
699
Embed Views
1

Actions

Likes
0
Downloads
3
Comments
0

1 Embed 1

http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Drupaljam Testing 20090626 Drupaljam Testing 20090626 Presentation Transcript

    • Unit Testing Raymond Muilwijk Michel van de Ven Madcap BV http://open.madcap.nl http://www.madcap.nl
    • Agenda ● De theorie ● Wat zijn unit tests? ● Wat heb je er aan? ● Test-first programming ● Pointers and pitfalls ● De praktijk ● Demonstratie unit tests & refactoring, test-first programming ● Toekomst van simpletest ● Q&A
    • Wat zijn unit tests? ● Doel is verificatie en validatie: Bouwen we het systeem juist? Bouwen we het juiste systeem? ● In code geformuleerde tests die, in een bekende context, “units” van het systeem functioneel testen. (Unit = functie, module, class &c) ● Voorspelbaar, reproduceerbaar. ● Programmer Tests & Customer Tests, integratietest
    • Wat heb je er aan? (1) ● Write once, use forever: zinvolle investering. ● Levende systeemdocumentatie: samen met de code onderhouden, dus actueel. ● Controle op regressie van bugs: iedere bug zijn eigen unit test. ● Courage to change: geen onvermoede effecten. ● Hulp bij impactanalyse: Wat is de fan-out als ik deze interface verander?
    • Wat heb je er aan? (2) ● Werkt toepassen van gezonde software engineering principes in de hand: ● Functionele decompositie. ● Decoupling & isolation, reduceren afhankelijkheden. ● MVC, Law of Demeter, YAGNI, DRY. ● Voorwaarde voor het kunnen doen van refactoring. ● Kwaliteit.
    • Test-first programming ● Eerst de test, dan pas de code. ● Unit test is zeer precieze want in code geformuleerde specificatie. ● Belangrijke effecten: ● Het formuleren van de unit test dwingt tot het doen van analyse en ontwerp (JIT, XP) ● Je kunt stoppen met coderen precies wanneer de unit test slaagt. Do the simplest thing that could possibly work. You are not going to need it.
    • Pointers & Pitfalls ● Unit tests tonen, net als alle andere methoden, alleen de aanwezigheid van bugs aan, niet de afwezigheid. ● De code van de unit test kan net zo buggy zijn als het testonderwerp. ● Unit tests moeten tezamen met de code onderhouden worden. ● Hoeveel unit tests moet je maken? Test everything that can possibly break. ● Gebruik van revisie controle is voorwaarde.
    • Demo Voorbereiding CVS checkout: http://drupal.org/node/320 Testcase maken: http://drupal.org/node/325974 Refactoring Convert search module: http://drupal.org/node/394182 Test First Interesting What's next: http://buytaert.net/drupal-7-testing-status-update-and-next-steps PIFR: http://testing.drupal.org/pifr/status
    • Q&A