$30 off During Our Annual Pro Sale. View Details »

Testing Reactivity in GraphQL

Testing Reactivity in GraphQL

Testbusters Vienna

SQUER Solutions

June 25, 2020
Tweet

More Decks by SQUER Solutions

Other Decks in Programming

Transcript

  1. @duffleit
    Testing Reactivity
    in GraphQL
    RBI Testing Day & TestBustersNight @StayAtHome Edition
    David Leitner - @duffleit

    View Slide

  2. @duffleit
    @duffleit
    @duffleit
    [email protected]
    David Leitner
    Lead Engineer

    View Slide

  3. @duffleit
    Testing Reactivity
    in GraphQL
    Testing Reactivity
    in GraphQL

    View Slide

  4. @duffleit
    reactivemanifesto.org

    View Slide

  5. @duffleit

    View Slide

  6. @duffleit

    View Slide

  7. @duffleit

    View Slide

  8. @duffleit

    View Slide

  9. @duffleit

    View Slide

  10. @duffleit
    MicroService A
    MicroService B

    View Slide

  11. @duffleit
    MicroService A
    MicroService B

    View Slide

  12. @duffleit
    MicroService A
    MicroService B
    MicroService B
    MicroService B

    View Slide

  13. @duffleit
    MicroService A
    MicroService B
    MicroService B
    MicroService B

    View Slide

  14. @duffleit
    MicroService A
    MicroService B

    View Slide

  15. @duffleit
    MicroService A
    MicroService B

    View Slide

  16. @duffleit
    Lambda/Actor/Microservice
    Lambda/Actor/Microservice
    Lambda/Actor/Microservice
    Backend for Frontend
    HTTP
    GraphQL

    View Slide

  17. @duffleit
    Testing Reactivity
    in GraphQL

    View Slide

  18. @duffleit
    ✅ Consumer Driven APIs
    ✅ Native Schema Support
    ✅ Streaming Support

    View Slide

  19. @duffleit
    Error: GraphQL Context not defined

    View Slide

  20. @duffleit
    ✅ Works
    But, not a Unit Test anymore.

    View Slide

  21. @duffleit
    ✅ Works
    as test in isolation

    View Slide

  22. @duffleit

    View Slide

  23. @duffleit

    View Slide

  24. @duffleit

    View Slide

  25. @duffleit
    GraphQL enables
    Consumer Driven
    Contract Testing
    naturally

    View Slide

  26. @duffleit

    View Slide

  27. @duffleit
    Lambda/Actor/Microservice
    Lambda/Actor/Microservice
    Lambda/Actor/Microservice
    Backend for Frontend
    HTTP
    GraphQL
    State
    Hydration
    Inject Test State

    View Slide

  28. @duffleit
    Lambda/Actor/Microservice
    Lambda/Actor/Microservice
    Lambda/Actor/Microservice
    Backend for Frontend
    HTTP
    GraphQL
    State
    Hydration
    Inject Test State
    Inject Test State

    View Slide

  29. @duffleit
    Lambda/Actor/Microservice
    Lambda/Actor/Microservice
    Lambda/Actor/Microservice
    Backend for Frontend
    HTTP
    GraphQL
    State
    Hydration

    View Slide

  30. @duffleit

    View Slide

  31. @duffleit
    GraphQL changes the way how to test,
    but not the fact that you should test.

    View Slide

  32. @duffleit
    by: twitter.com/swardley

    View Slide

  33. @duffleit
    @duffleit
    @duffleit
    squer.at/slides
    David Leitner
    [email protected]

    View Slide

  34. @duffleit

    View Slide