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

How Automated Testing will make or break your t...

Avatar for Dawit Abraham Dawit Abraham
November 23, 2019

How Automated Testing will make or break your tech startup

There's a saying "Even a blind squirrel finds a nut once in a while." I've read it being used to relate developers who don't have automated tests in their projects to blind squirrels. (Both will find bugs/nuts once in a while).

However, I find that this message distracts developers from the true essence of automated tests. It's really not about quality assurance and discovering bugs. That's the benefit of "Testing". But the "Automated" part is more important. You can imagine Automated Testing as the process of building a robot (Let's call him Baymax) that sits down and goes through all the features of your app and notifies you if something is not behaving as it should. And the best part of having Baymax in your team is that he can go through your app way faster than you or your team can. On a large project, Baymax may take a few minutes if not seconds to go through thousands of features while it will take your QA team weeks if not months to do the same.

In this session, we will talk about how having Baymax could make or break your tech startup.

Avatar for Dawit Abraham

Dawit Abraham

November 23, 2019
Tweet

Other Decks in Technology

Transcript

  1. WHAT IS AUTOMATED TESTING? ➤ Quality Assurance? ➤ Cant’ I

    do that myself? ➤ Do I really need to write automated tests to check if my software works?
  2. THINK OF A TECH STARTUP ➤ You Have ➤ A

    Value Proposition to validate ➤ A Feedback Loop to create ➤ An MVP to launch ➤ A Business Model to prove ➤ And Time and Money are against you!
  3. SMALL FEATURES ➤ Say you have 5 features on your

    app ➤ You can go through all of them in 10 minutes ➤ If you add 5 more, you can still check everything in half an hour
  4. LOTS OF FEATURES ➤ As your features add up, the

    time and cost of adding them increases exponentially!
  5. PRODUCT FAILURE ➤ You’ll have frustrated clients ➤ You can’t

    adapt to user’s demands ➤ You’re slow to adapt to changes in the market ➤ You’re slow to test new features ➤ You’ll run out of money and time before you prove your business model!
  6. THE CAR METAPHOR ➤ Imagine if you built a car!

    ➤ AND IT WORKS! ➤ Sure, you used lots of duct- tape. ➤ BUT IT WORKS!
  7. YOU STILL HAVE TO TEST IT ➤ Is it flexible?

    ➤ Is it maintainable? ➤ Is it Testable? ➤ What if you had a Robot that can Test it for you?
  8. ENTER BAYMAX ➤ Say, instead of a QA team, you

    have a Robot ➤ He would test every single component ➤ He won’t get tired ➤ But best of all, He’s lighting fast!!!
  9. BENEFITS OF BAYMAX ➤ Feed back loop in now much

    faster ➤ Even at thousands of features, you can still refactor ➤ Your update cycle is reduced ➤ You’re quick to adapt to market/user demands ➤ You’ll have happy clients! ➤ You can stay ahead of your competition
  10. TESTABILITY ➤ For BayMAx to be able to do it’s

    job, your car (code) needs to be testable ➤ Take the Radio for example ➤ Can BayMax plug it out? ➤ Can BayMax use a different Electric Source? ➤ Can BayMax Transmit his own Broadcast?
  11. COUPLING ➤ Say You’re in a garage and you hear

    ➤ “My engine stoped working when I changed my tires!” ➤ “My car brake starts to malfunction whenever I insert a Rophnan disk into my CD player”
 ➤ “But it works fine if I’m listening to him on the Radio” ➤ Too Ridiculous, right?
  12. DE-COUPLING ➤ Not too ridiculous in the Software world! ➤

    “I can’t change my profile picture on Instagram or Tokenect if I’m chatting with Rophnan” ➤ Not Entirely Impossible!
  13. TESTABILITY ENSURES DECOUPLING ➤ For your Software to be testable,

    it needs to be decoupled! ➤ This means, if you are successfully testing your software, your code is truly decoupled! ➤ This will ensure you have a clean, maintainable, flexible, and robust software!