← Back to context

Comment by londons_explore

4 years ago

No connection -> Fine

Good connection -> Fine

Spotty connection -> Problematic.

Basically, they didn't include a timeout in their network code.

It's funny how many apps have this problem, you don't realize until you're on a spotty connection. Often disabling/cycling the wifi/network fixes an app freeze.

  • A "manual" test case I've seen before actually involved trying various things in the software while literally walking into an elevator and having all network connectivity suddenly cut out (no WiFi and no cell radio), in order to simulate what so many people do (or at least did anyway, pre-COVID) regularly throughout the day. I suppose this is also a bit different than just toggling connectivity on the device, since for some time the app and OS both still think the connection is in tact when it's already physically gone, so it may even be useful to help expose other issues this way.

    One of the things that's easy to take for granted these days when working on desktop or server software is a mostly stable network connection, but on mobile this goes completely out the window, or down the elevator shaft as the case may be. :)

    • For one bit of software I'm writing expected to be 'network robust', there is actually a test case that, in any network state, from any screen in the app, any button can be clicked, and the resulting screen must be the same as if there were network connectivity, within 100ms.

      The 'network states' are online, offline, all packets dropped, and various simulated network connections.

      This is achieved by preloading the next click everywhere.