As testers, many times we need the help, support, and skills of our colleagues around us to achieve our goals. Realizing what you need to complete a task or to test software is a vital skill to have. It can save you, and others, a great deal of time and headaches.
As an example, let’s pretend we’re testing a notification that gets triggered when an action is performed, but it only appears once every 48 hours. You could perform an action that triggers it, then wait 48 hours to continue testing. I’m sure you’d agree that is not a great use of time. A potential solution is to ask the developers to add a special option to control the time manually. How much testing would you get done and how fast if you set the timer to 2 minutes? It could be done through a config file, a debug menu, a special build, a special screen, or anything else really. The idea is to communicate with the developers to help you test efficiently. To name a few more examples:
- Enabling/disabling some logging
- Controlling A/B tests
- Switching between different dev environments (staging, production, etc)
- Special testing environments with testing data
The idea is we should anticipate these needs ahead of time and communicate to the right people.