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

The importance of Agile Software Testing by Kudakwashe Siziva

Pycon ZA
October 06, 2017

The importance of Agile Software Testing by Kudakwashe Siziva

From the beginning of time, the relationship between developers and software testers has always been that of 'Cat and Mouse'. This relationship has had its fair share of short comings which chiefly included unmet deadlines and lack of confidence when shipping software products. The talk is meant to introduce a better relationship between developers and testers by going over the importance of including testing in an Agile cycle.

We will look at different levels of testing E.g. Unit vs integration testing, how units work together. Knowing why we are writing each test - what are we trying to achieve when we write a test for a unit as that is a place that developers struggle and either write duplicate tests or not enough and changeability and confidence can suffer as a result.

Objective is to build better agile software teams and ship clean python projects with confidence.

Pycon ZA

October 06, 2017
Tweet

More Decks by Pycon ZA

Other Decks in Programming

Transcript

  1. HELLO!
    I am Kudakwashe Siziva
    I am a web developer and software product
    manager at Muzinda Hub. I am here to share with
    you the benefits of Agile Software Testing.

    View full-size slide

  2. Importance of
    Agile Software
    Testing

    View full-size slide

  3. “I don’t care if it works on your
    machine! We are not shipping your
    machine!” — Vidiu Platon.”

    View full-size slide

  4. BIG
    Problem
    EcoFarmer – Case Study

    View full-size slide

  5. Defining Terms
    ü Agile
    ü Software Testing

    View full-size slide

  6. Agile
    ü Is an umbrella term to describe of software
    development methods including scrum
    ü Emphasizes collaborative, integrated teams,
    frequent delivery and ability to adapt to
    changing business needs.

    View full-size slide

  7. Software Testing
    ü Is a process of executing a program or
    application with the intent of finding the
    software bug.
    ü Is important to point out defects and errors
    made during development
    ü Makes sure of customer’s reliability and
    satisfaction in the application
    ü Helps ensure quality in product, quality
    product delivered helps in gaining customer
    confidence

    View full-size slide

  8. Ultimate Solution
    üAgile Software Testing

    View full-size slide

  9. Principles of Agile Software
    Testing
    ü Testing moves the project forward
    ü Testing is not a phase
    ü Everybody tests
    ü Reduce feedback latency
    ü Tests represents Expectation
    ü Bugs do not hang around
    ü Reduce test documentation overhead
    ü Tested is part of “done”
    ü From test last to test-driven

    View full-size slide

  10. THANKS!
    Any questions?
    You can find me at:
    Github: kaysiz · Twitter: brysiz· [email protected]

    View full-size slide

  11. Credits
    Special thanks to all the people who helped
    me:
    › Yollanda Gonyora
    › Patrick Vine

    View full-size slide