| || |
How to test a baby monitor
We have a Computer Science project consisting of a baby alarm (a sender and a receiver) so when the baby is crying or a loud sound is perceived, an alert is sent to the parent.
I'm interested in how someone would test the sender, meaning how would you test the detection of a crying baby/loud sound. We have the algorithm to detect the sounds, but we need some help to know how would we have to think in terms of test cases.
This is what we have thought of for now regarding test scenarios:
Different types and lengths of baby cries
Maximum distance for baby to be in regards to the tool
Interference with other devices
False positive rates and false negative rates
Do you have written Requirements?
Usually you'll have to start with requirements, then bring in use cases/scenarios to build a list of different Risks.
All testing is to mitigate risks. Once you have a list of concerns, then you can easily build a bunch of tests to address those concerns.
You are thinking too much like a consumer and not like an engineer.
Step back and think about the problem you are trying to solve. Instead of identifying each unique case, what you want is a way to describe the entire population of test patterns in the most optimal way.
So simplify your condition to the basic sets of data points (My first shot at the list is below) which will allow you to describe various scenarios using these bits. Then create means to generate all the permutations possible and emulate/simulate then in logical manner in the fastest way possible. Once you do that, you have a test bed that can scale. If you see a case that you are missing, then evaluate your 'bits' and add/tweak them to create the permutation necessary. As you iterate, your testing will harden and not only that, you will start to think of your product in a different way.
- Audio conditions
* Sound level (db)
* Types of sound (frequency/ies)
* Ambient sounds vs signal (signal-noise ratio)
* Duration of sound
- Communication (external factors)
* Signal strength
* % of Signal loss
- Device related states
* Temperature (if it matters)
* Power level (If it matters)