Unit Testing (Drukwerkdeal Developer Meetup)

Unit Testing (Drukwerkdeal Developer Meetup)

Slides van mijn presentatie over unit testing, zoals ik die gaf op de Drukwerkdeal Developer Meetup.

A8f72e32766355f12a56ede9aaa0ee78?s=128

Stefan Koopmanschap

December 12, 2014
Tweet

Transcript

  1. 2.
  2. 4.
  3. 11.
  4. 14.

    QA ▸ Unit Testing ▸ Functional Testing ▸ PHPMD ▸

    PHPCPD ▸ PHPCodeSniffer ▸ PHPSecurityChecker
  5. 17.
  6. 23.

    WAAROM UNIT TESTEN? ▸ Meer zekerheid over je code ▸

    Betere architectuur ▸ Productie breekt niet meer
  7. 24.

    WAAROM UNIT TESTEN? ▸ Meer zekerheid over je code ▸

    Betere architectuur ▸ Productie breekt niet meer - als het goed is
  8. 25.

    WAAROM UNIT TESTEN? ▸ Meer zekerheid over je code ▸

    Betere architectuur ▸ Productie breekt niet meer - als het goed is ▸ Het kost minder tijd
  9. 28.
  10. 30.
  11. 33.
  12. 34.
  13. 39.

    namespace Tests\Calculator; class CalculatorTest extends \PHPUnit_Framework_TestCase { public function testAdd()

    { $calculator = new \Calculator\Calculator(); $result = $calculator->add(1, 1); $this->assertEquals(2, $result); } }
  14. 40.
  15. 44.

    DEPENDENCY INJECTION ▸ Geen gehardcode dependencies meer ▸ Dus niet

    meer new Classname() ▸ Via constructor, setters of methode
  16. 45.
  17. 48.
  18. 52.

    MOCK OBJECTS ▸ Nep ▸ Doen net alsof ze echt

    zijn ▸ Gedrag kan gestuurd worden
  19. 53.

    MOCK OBJECTS ▸ Nep ▸ Doen net alsof ze echt

    zijn ▸ Gedrag kan gestuurd worden ▸ Verwachtingen kunnen gecheck worden
  20. 54.
  21. 58.

    CONTINUOUS INTEGRATION ▸ QA best practice ▸ Regelmatig tests (en

    andere checks) uitvoeren ▸ Waarschuwing bij problemen
  22. 60.
  23. 61.
  24. 62.