Development
Testing Bluetooth apps can be challenging, especially if you’re a beginner in the world of quality assurance – trust me, we’ve all been there. Bluetooth is one of those technologies that seem very simple from a user perspective, but in reality, it’s often more complex. And wherever there’s complexity, there are also more chances something might potentially go wrong. This is why I decided to write this guide. Continue reading and learn everything you need to know about testing your first Bluetooth app.
Before you start the testing process, I suggest you learn all about the Bluetooth device you’re going to work with. First, cover the basics: What’s its purpose? What will it be used for? Afterward, you can dive in a bit deeper and learn more about its behaviour:
After answering these questions, you will officially have a solid knowledge of the Bluetooth device you plan to test. Now, what exactly does the testing part include, find out below.
Every Bluetooth device has its own way of connecting to the app. Some of them connect automatically and the connection just stays alive. But there are also Bluetooth apps that require specific pairing to connect to the Bluetooth device. Once the pairing is complete, the user can easily connect their Bluetooth app to the device, provided they turn on Bluetooth on their device, of course.
Once you start testing, watch out for:
The last two points can be especially tricky. For example, you want to connect your Bluetooth device to a particular smartphone, but you have opened the app on more than one device – there’s a high chance of every smartphone nearby trying to connect to it. A similar problem appears when you open the app on just one device but have more Bluetooth devices laying around. This is the part when the smartphone goes crazy because it doesn’t know which Bluetooth device to connect to.
Do you know how many times I accidentally connected the Bluetooth device I was working with to the wrong smartphone? Too many. And let me tell you one thing, it’s not the most exciting part of the job to search for the phone that’s connected to the Bluetooth device – especially if you work with 10-15 testing devices on a regular basis. But what can you do. 🤷♀️
I’m sure you’re aware of the impact distance between a Bluetooth device and an app has on the quality of the Bluetooth connection. There are going to be times when the user won’t be able to use the app and the device at the same time. That’s why it’s important to test how the connection will work when the smartphone and the Bluetooth device are not next to each other.
One of the biggest challenges was working on features related to the firmware of the Bluetooth device. It all started with the first firmware update, when some features that were working perfectly before, just stopped working or changed behaviour with the new firmware version. This was the moment I realized how complex Bluetooth testing can be. It's also when I recognized the importance of regression testing – if I didn't conduct it every sprint I wouldn't have even noticed the difference in the developed features after the firmware update.
If your app has a “firmware update” feature, don't forget to take care of:
It’s important to put yourselves in the user’s shoes when testing the firmware features – because if I managed to brick a Bluetooth device simply by closing the app in the middle of an update, then any user could do it. To elaborate… The old firmware version got deleted at the same moment I started the installation of the new version, which first led to an error and then bricking the Bluetooth device. Of course, this was unacceptable so we searched for a fix. And we found one! Now, if the user closes the app while the update is in progress, the app will find the bricked Bluetooth device and start the installation of the new firmware version again.
I’m mentioning this because this situation led me to one of the most important lessons in testing – different platforms, software versions, and devices communicate differently with the Bluetooth device. I faced scenarios where on a Samsung, everything would work perfectly, and then on Huawei, the same feature I tested before, would not work. Thereby, when you start testing, keep in mind to use as many devices and cover as many software versions as possible. And do it on every platform that supports the app.
Data collecting and storing is one of the basic functions of every app – that implies Bluetooth apps, too. When testing data collecting and storing, keep in mind:
These are just some of the generic cases you should test when we talk about data collecting and storing in the Bluetooth app, but, depending on the app expectations, there can be even more things to test.
Bluetooth communication is one of the most important functionalities to test in your app. If the communication doesn’t work, then the app probably doesn’t fulfill its purpose. That’s why you need to test:
Testing Bluetooth apps can be challenging at first, but the benefits you get out of it are worth it:
When testing Bluetooth apps, it’s important to stay organized and to accept help when needed – some things will be new to you. That way, you allow yourself to grow and you'll be able to improve your testing skills. But hey, reading this article is already a step in the right direction. Technically, you’re ready to test your first Bluetooth app. Congrats! If you run into any questions, feel free to contact me. 🤗
Katarina is a Quality Assurance Engineer at COBE. Besides testing apps and writing bug reports, she is a huge fan of Harry Potter books and movies.