Behat Layered Cake - KaunasPHP

Behat Layered Cake - KaunasPHP

Speed up Behat tests with a clever use of the layered architecture - KaunasPHP meetup edition!

2bd48651cd01e0ca2e0a255a63da77aa?s=128

Marek Matulka

January 14, 2015
Tweet

Transcript

  1. 6.
  2. 12.
  3. 13.

    Typical dev stack - Vagrant VM - Symfony framework -

    mysql or mongodb storage - Linux/OS X host - scrutiniser-ci
  4. 14.
  5. 23.
  6. 25.
  7. 27.

    What if I had 3000+ steps? 300 steps took over

    10 minutes 3000 steps will take over 100 minutes! (inside guest VM)
  8. 28.

    What if I had 3000+ steps? 300 steps took over

    1 minute 3000 steps will take over 10 minutes! (on host)
  9. 36.

    Dependency Inversion “High level modules should not depend on lower

    level implementation” – Good old Uncle Bob
  10. 41.

    Hexagonal Architecture UI Adapter Log Adapter Data Storage Adapter Domain

    UI client port log adapter port persistence layer port Data Provider Adapter data provider port
  11. 42.

    Hexagonal Architecture UI Adapter Log Adapter Test Adapter Test Adapter

    Data Storage Adapter Test Adapter Domain External Data Adapter Test Adapter
  12. 66.

    Hexagonal Architecture UI Adapter Log Adapter Test Adapter Test Adapter

    Data Storage Adapter Test Adapter Domain External Data Adapter Test Adapter