Testing Bluetooth Integrations
What things should we test and make sure work well?
What things should we test and make sure work well?
The answer depends on the app and how it is supposed to work with the device.
However, there are some common areas to focus on:
- Discovery
How quickly can the device be found?
Can it be found immediately after a disconnect?
Will the mobile app find the device while running in the background?
How does a room with lots of Bluetooth devices affect detection times? - Connectivity
How quickly can the app connect to the device? (This includes listening for notifications, configuring MTU, etc)
How quickly can the app disconnect from the device?
What happens if another app or device "steals" a connection to the device?
How does an area with lots of Bluetooth devices affect connection times? - Data Flow
How fast are the critical transactions between the app and device?
What happens when unexpected data is sent to the app or device?
(An incorrect packet structure, requests outside the expected flow, etc)
Some of these areas will be more important to test, depending the integration.
An access control app
will be more concerned with streamlining quick discovery and connections times and performance in crowded environments.
A medical device app
will be extremely concerned with testing the data flow and making sure it handles 'bad' data or missing data.
A health tracking app
will want to make sure the device can be discovered and connected to in the background (and keep that connection open during the day).
The key is to evaluate the integration and understand what parts are most critical, and what parts are the riskiest (prone to fail).