Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Principles of Automation

Jenny Bramble
November 15, 2023
4

Principles of Automation

Everyone has a code of ethics that they live by, and that drive our behaviors. Even if we never write them down, our personal code of ethics helps us make decisions and move through a complex world. Testing and automation are no different. In this talk, Jenny Bramble strives to answer the question of why we test and why we make the choices we do. She will share her own personal principles of testing that help her make all of her testing decisions – from choosing what falls into regression, to what gets automated, and even who she invites to join her teams. You’ll leave with a newfound sense of purpose and the ability to create your own principles of testing.

* Having Principles of Testing allows us to focus our testing and be true to ourselves
* Creating your own Principles of Testing is a way to grow and examine your place in the software world
* Testers are the foundation of the future of software so we should act in a principled way

Jenny Bramble

November 15, 2023
Tweet

Transcript

  1. Your Principles of
    Testing
    @jennydoesthings

    View full-size slide

  2. • Director of Quality Engineering, Pap
    a

    • Tester by nature and nurtur
    e

    • Pronouns are she/he
    r

    • I have stickers!
    Jenny Bramble
    @jennydoesthings - #ElixirConf2022

    View full-size slide

  3. 01 02
    03 04
    Codes of Ethics But Why?
    Making Your Own
    My Principles of
    Testing
    @jennydoesthings

    View full-size slide

  4. Codes of Ethics
    @jennydoesthings

    View full-size slide

  5. @jennydoesthings
    @jennydoesthings
    Everyone has a
    code of ethics.

    View full-size slide

  6. @jennydoesthings
    @jennydoesthings
    Our code informs how we
    move through our world
    and the impact we have
    on it.

    View full-size slide

  7. @jennydoesthings
    @jennydoesthings
    I spend a lot of time
    thinking about the
    things that drive me.

    View full-size slide

  8. @jennydoesthings
    @jennydoesthings
    I want to talk about
    what I’ve gained from
    this introspection.

    View full-size slide

  9. But Why?
    @jennydoesthings

    View full-size slide

  10. @jennydoesthings
    @jennydoesthings
    Why do we need
    a code of ethics?

    View full-size slide

  11. Why do we need a
    code of ethics?
    • We already have one; we’re just writing it
    down.
    @jennydoesthings

    View full-size slide

  12. Why do we need a
    code of ethics?
    • We already have one; we’re just writing it
    down
    .

    • Knowing yourself and your motivations
    helps you focus your intentions.
    @jennydoesthings

    View full-size slide

  13. Why do we need a
    code of ethics?
    • We already have one; we’re just writing it
    down
    .

    • Knowing yourself and your motivations
    helps you focus your intentions
    .

    • It gives you a sense of control over your
    actions.
    @jennydoesthings

    View full-size slide

  14. @jennydoesthings
    @jennydoesthings
    What does this
    have to do with
    work?

    View full-size slide

  15. @jennydoesthings
    @jennydoesthings
    We need to know
    why we test and
    what drives us.

    View full-size slide

  16. @jennydoesthings
    @jennydoesthings
    As testers, we can find
    ourselves reacting to our
    jobs instead of being
    proactive.

    View full-size slide

  17. @jennydoesthings
    @jennydoesthings
    Pulling together a
    roadmap and a set of
    principles for ourselves
    helps us focus.

    View full-size slide

  18. @jennydoesthings
    @jennydoesthings
    Let’s talk about
    what that looks
    like.

    View full-size slide

  19. My Principles of Testing
    @jennydoesthings

    View full-size slide

  20. What are m
    y

    principles of testing?
    • Deliver high value software quickly and
    safely through holistic testing.
    @jennydoesthings

    View full-size slide

  21. What are m
    y

    principles of testing?
    • Deliver high value software quickly and
    safely through holistic testing
    .

    • Don’t test everything. Test as little as
    possible.
    @jennydoesthings

    View full-size slide

  22. What are m
    y

    principles of testing?
    • Deliver high value software quickly and
    safely through holistic testing
    .

    • Don’t test everything. Test as little as
    possible
    .

    • Targeted, efficient testing with preparation
    and thoughtful risk assessment.
    @jennydoesthings

    View full-size slide

  23. What are m
    y

    principles of testing?
    • Deliver high value software quickly and
    safely through holistic testing
    .

    • Don’t test everything. Test as little as
    possible
    .

    • Targeted, efficient testing with preparation
    and thoughtful risk assessment
    .

    • Automate what should be automated.
    @jennydoesthings

    View full-size slide

  24. What are m
    y

    principles of testing?
    • Deliver high value software quickly and safely
    through holistic testing
    .

    • Don’t test everything. Test as little as possible
    .

    • Targeted, efficient testing with preparation and
    thoughtful risk assessment
    .

    • Automate what should be automated
    .

    • Automation code is production code.
    @jennydoesthings

    View full-size slide

  25. What are m
    y

    principles of testing?
    • Deliver high value software quickly and safely
    through holistic testing
    .

    • Don’t test everything. Test as little as possible
    .

    • Targeted, efficient testing with preparation and
    thoughtful risk assessment
    .

    • Automate what should be automated
    .

    • Automation code is production code.


    • Every line of code affects a human.
    @jennydoesthings

    View full-size slide

  26. What are m
    y

    principles of automation?
    • Share code and tools with your developers.
    @jennydoesthings

    View full-size slide

  27. What are m
    y

    principles of automation?
    • Share code and tools with your developers
    .

    • Automate what should be automated.
    Determine what tests need to be run with
    the whole team.
    @jennydoesthings

    View full-size slide

  28. What are m
    y

    principles of automation?
    • Share code and tools with your developers
    .

    • Automate what should be automated.
    Determine what tests need to be run with
    the whole team
    .

    • Automation code is production code.
    @jennydoesthings

    View full-size slide

  29. What are m
    y

    principles of automation?
    • Share code and tools with your developers
    .

    • Automate what should be automated.
    Determine what tests need to be run with
    the whole team
    .

    • Automation code is production code.


    • Encourage testability in all code.
    @jennydoesthings

    View full-size slide

  30. What are m
    y

    principles of automation?
    • Share code and tools with your developers
    .

    • Automate what should be automated.
    Determine what tests need to be run with the
    whole team
    .

    • Automation code is production code.


    • Encourage testability in all code
    .

    • Participate in code reviews and other team
    ceremonies.
    @jennydoesthings

    View full-size slide

  31. What are m
    y

    principles of automation?
    • Share code and tools with your developers
    .

    • Automate what should be automated. Determine what
    tests need to be run with the whole team
    .

    • Automation code is production code.


    • Encourage testability in all code
    .

    • Participate in code reviews and other team
    ceremonies
    .

    • Thoughtful automation reduces the human burden of
    testing.
    @jennydoesthings

    View full-size slide

  32. Making Your Own
    @jennydoesthings

    View full-size slide

  33. @jennydoesthings
    @jennydoesthings
    Start with some
    soul searching.

    View full-size slide

  34. @jennydoesthings
    @jennydoesthings
    Why do you test?

    View full-size slide

  35. What are m
    y

    principles of testing?
    • Deliver high value software quickly and safely
    through holistic testing
    .

    • Don’t test everything. Test as little as possible
    .

    • Targeted, efficient testing with preparation and
    thoughtful risk assessment
    .

    • Automate what should be automated
    .

    • Automation code is production code.


    • Every line of code affects a human.
    @jennydoesthings

    View full-size slide

  36. What are m
    y

    principles of automation?
    • Share code and tools with your developers
    .

    • Automate what should be automated. Determine what
    tests need to be run with the whole team
    .

    • Automation code is production code.


    • Encourage testability in all code
    .

    • Participate in code reviews and other team
    ceremonies
    .

    • Thoughtful automation reduces the human burden
    of testing.
    @jennydoesthings

    View full-size slide

  37. @jennydoesthings
    @jennydoesthings
    What are your
    goals and desired
    outcomes?

    View full-size slide

  38. What are m
    y

    principles of testing?
    • Deliver high value software quickly and
    safely through holistic testing
    .

    • Don’t test everything. Test as little as possible
    .

    • Targeted, efficient testing with preparation
    and thoughtful risk assessment
    .

    • Automate what should be automated
    .

    • Automation code is production code.


    • Every line of code affects a human.
    @jennydoesthings

    View full-size slide

  39. What are m
    y

    principles of automation?
    • Share code and tools with your developers
    .

    • Automate what should be automated. Determine what
    tests need to be run with the whole team
    .

    • Automation code is production code.


    • Encourage testability in all code
    .

    • Participate in code reviews and other team
    ceremonies
    .

    • Thoughtful automation reduces the human burden
    of testing.
    @jennydoesthings

    View full-size slide

  40. @jennydoesthings
    @jennydoesthings
    How do you want to
    get to those goals
    and outcomes?

    View full-size slide

  41. What are m
    y

    principles of testing?
    • Deliver high value software quickly and safely
    through holistic testing
    .

    • Don’t test everything. Test as little as possible
    .

    • Targeted, efficient testing with preparation and
    thoughtful risk assessment
    .

    • Automate what should be automated
    .

    • Automation code is production code.


    • Every line of code affects a human.
    @jennydoesthings

    View full-size slide

  42. What are m
    y

    principles of automation?
    • Share code and tools with your developers
    .

    • Automate what should be automated. Determine
    what tests need to be run with the whole team
    .

    • Automation code is production code.


    • Encourage testability in all code
    .

    • Participate in code reviews and other team
    ceremonies
    .

    • Thoughtful automation reduces the human burden of
    testing.
    @jennydoesthings

    View full-size slide

  43. @jennydoesthings
    @jennydoesthings
    Think about events
    in your career that
    shape you.

    View full-size slide

  44. @jennydoesthings
    @jennydoesthings
    Think about
    people who have
    impacted you.

    View full-size slide

  45. • Automated testing helps us fight fate a bit and catch
    some accidents before they go live. - Grayson Hansard
    • Many times, a bug just illustrates that there’s more
    complexity than we imagined. - Grayson Hansard
    • We make mistakes today to make better ones in the
    future. - Grayson Hansar
    d

    • Testers hold the mental model of the system in our
    minds. - Jasmin
    • Don’t write swears - Adrian P. Dunsto
    n

    • Make the truth easy to find - Adrian P. Dunsto
    n

    • Work to get your whole team engaged rather than
    specifically to become a test automation engineer. -
    Lisa Crispin
    @jennydoesthings

    View full-size slide

  46. @jennydoesthings
    @jennydoesthings
    What’s important?

    View full-size slide

  47. @jennydoesthings
    @jennydoesthings
    Reevaluate.

    View full-size slide

  48. Questions?
    @jennydoesthings
    [email protected]
    • Twitter: @jennydoesthings

    View full-size slide

  49. Credits
    This is where you give credit to the ones who are part of this
    project
    .

    ● Presentation template by Slidesgo
    ● Icons by Flaticon
    ● Infographics by Freepik
    ● Images created Freepi
    k

    ● Author introduction slide photo created by Freepi
    k

    ● Text & Image slide photo created by Freepik.com

    View full-size slide