iteration cover image

iteration

❌ Extreme Testing

Sep 30, 2019
37:19

Iteration — A weekly podcast about programming, development, and design through the lens of amazing books, chapter-by-chapter.

This episode uses Chapter 13 of Extreme programing as a jumping off point

Testing Early, Often, and Automated

Here is the dilemma in software development: defects are expensive, but eliminating defects is also expensive.

  • Instead of talking about having a kick-ass automated test suite, frequently testing code, and all of that good stuff, we should talk about something a little different.

Q: What was the last big bug you can think of? How did you handle it?

  • Health coaching group discussions, mobile users could not post into group discussions for 48 hours. It’s a core feature of the platform.
  • React Native Upgrade → Weird android bug where people could not take a photo to upload their proof of funds

Q: What was the reason for the latest big bug?

  • lack of automated integration tests in the Mobile app.
  • We have some unit testing we also have full API tests, but not enough coverage in the integration.
  • We made a small change to the group discussion model, the mobile app wasn’t updated to consider this change, timing the rollout.
  • Android Weirdness, lack of QA, rushing to get to the latest and greatest

Q: How do you handle bugs in general?

  • Testing is first line of defense.
  • QA is backup (One other dev)
  • App signal is the catch all (After deployment)
  • Users are the last line of defense RABBITHOLE
    • Give users a clear escape hatch / line of communication.
    • So many times we’ve caught flawed design assumptions from that feedback. Users love it too.
    • Superlative language "Thank you so much, you are the best, we really really appreciate you sending that in and I'm so sorry if you are having issues. "

Q: John Ask: What’s the most common causes of bugs?

  • Test data does not properly represent production data - phone formats / etc
  • An Edge case that wasn’t considered
  • The feature functions properly but the functionality is wrong / not what the stakeholder intended.
  • Rollout was not planned, data transition or all platforms are not in sync.
  • Browser or context considerations. Mobile vs tablet / android device universe.
  • Lack of QA, lack of tests
  • Rushing things

John — Summary / Thoughts on book overall

  • Overall got the most out of this vs other books we've read

Picks

  • JP: Heroku! Review Apps (spins up a new app every time a PR is opened); Pipelines
  • John: Contentful + Rails to give clients ability to update copy and images on marketing pages.

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode