Dredd @ Symfonisti Praha 6/2016

Dredd @ Symfonisti Praha 6/2016

Naprogramovali jste v Symfony svoje HTTP API a chystáte se jej spustit pro vývojáře klientských aplikací. Jenže jak zaručit, aby se váš API server teď i do budoucna choval doopravdy tak, jak to slibujete v dokumentaci?

Musíte svůj kód testovat. Jenže testovat HTTP API, to je pořád samá kontrola status kódů, hlaviček, JSON sem, JSON tam, do nekonečna, do omrzení. V Apiary vyvíjíme testovací framework Dredd, který vám bez ohledu na váš programovací jazyk kontrolu API výrazně ulehčí.

7b2e4bf7ecca28e530e1c421f0676c0b?s=128

Honza Javorek

June 27, 2016
Tweet

Transcript

  1. DREDD Do Justice to Your Web API

  2. HONZA JAVOREK @honzajavorek honzajavorek.cz 80s child

  3. Day Night apiary.io Czech Python Community Mascot python.cz Spaghetti Code

    Hunter
  4. None
  5. None
  6. None
  7. None
  8. API works as in docs

  9. API works as in docs

  10. API doesn't work as in docs

  11. API doesn't work as in docs

  12. vs

  13. vs Tested Untested

  14. How many of you test your web API docs?

  15. Almost nobody!

  16. Why? I'M A STREET JUDGE. AND I'M VERY LATE FOR

    WORK.
  17. None
  18. Tedious Perform request… Assert status code… Assert headers… Assert body

    payload…
  19. Easily gets out of sync Contract in Code Maintaining Docs

    Contract in Docs Testing Code vs
  20. 1. Contract in Docs

  21. API Description API Blueprint apiblueprint.org

  22. API Description Swagger / OAI swagger.io

  23. Lifes depend on that contract

  24. 2. Testing

  25. DREDD dredd.readthedocs.org github.com/apiaryio/dredd

  26. None
  27. None
  28. 100% Open Source

  29. DREDD HOOKS JUDGEMENT IS COMING

  30. None
  31. None
  32. None
  33. CONTINUOUS INTEGRATION NEGOTIATION'S OVER, SENTENCE IS: FAILING CI BUILD

  34. …and any other *NIX environment

  35. REPORTERS GUILTY!

  36. None
  37. None
  38. Public!

  39. APIARY INTEGRATION JUDGEMENT IS COMING

  40. None
  41. None
  42. Test Reports from Local Development Test Reports from CI Periodic

    Checks of Production Beta
  43. DREDD BRINGS THE LAW I AM THE
 LAW!

  44. None
  45. THANKS! Dredd dredd.rtfd.org API Blueprint apiblueprint.org @apiblueprint Apiary apiary.io @apiaryio

    Honza honzajavorek.cz @honzajavorek