IoT Testing Process — The big Challenge

Tahmina Naznin
Oceanize Lab Geeks
Published in
4 min readMay 10, 2018

Internet of Things” (IoT):is the network or associations between those Internet-connected objects (smart devices) that are able to exchange information by using an agreed method and data schema. Expertise requires knowledge of communication and other protocols, hardware trade-offs, software coding, Big Data impact, security, user experience and the high demands of end users and regulators. These combine into a perfect storm, presenting established and new challenges regarding QA in general, and particularly testing in the IoT ecosystem. This article will highlight the challenges as well as address potential strategies and solutions.

IoT Testing Approaches:

IoT Testing

Usability:

  • We need to make sure the usability of each of the device used here.
  • The medical healthcare tracking device used should be portable enough to be moved into different segments of the medical.
  • The equipment should be smart enough to push not only the notifications but also the error messages, warnings etc.
  • The system should have an option to log all the events to provide clarity to the end users. If it is not capable of doing that, the system should push those as well to a database to store it.
  • The notifications should be shown and handling of the display should be done properly in the devices [computers/mobile devices].
  • Usability in terms of displaying data, processing data, pushing job tasks from the devices should be tested thoroughly.

IoT Security:

  • IoT Security challenges: IoT is data centric where all the devices/system connected operate based on the data that is available.
  • When it comes to the data flow between devices, there is always a chance that the data can be accessed or read when getting transferred.
  • From a testing standpoint, we need to check if the data is protected/encrypted when getting transferred from one device to the other.
  • Wherever, there is an UI, we need to make sure there is a password protection on it.

Connectivity:

  • As it is a healthcare solution, connectivity plays a vital role.
  • The system has to be available all the time and should have seamless connectivity with the stakeholders.
  • As per connectivity, two things are very important to test;
  • Connectivity, transfer of data, receiving job tasks from the devices should be seamless when the connection is UP and running.

Performance:

  • When we are talking about a system for a healthcare domain, we need to make sure the system is scalable enough for the whole hospital.
  • When the testing is carried out, it is done for 2–10 patients at a time and the data is propagated to 10–20 devices.
  • When the whole hospital is connected and 180–200 patients are connected to the system, the data that is propagated is much bigger than the tested data.
  • As testers, we need to make sure the system performs the same even though the added data is propagated.
  • We should also test the monitoring utility to display the system usage, power usage, temperature etc.

Compatibility Testing:

  • Looking at the complex architecture of an IoT system, compatibility testing is a must.
  • Testing items such as, multiple operating system versions, browser types and respective versions, generations of devices, communication modes [For e.g. Bluetooth 2.0, 3.0] is necessary for IoT compatibility testing.

Pilot Testing:

  • As far as the IoT is concerned, Pilot testing is a must.
  • Only testing in Lab makes sure the product/system works fine. But, this may backfire badly when exposed to real-time conditions/steps/scenarios.
  • During pilot testing, the system is exposed to a limited number of users in the real field. They use the application and give feedbacks on the system.
  • These comments come in handy making the application robust enough for the production deployment.

Regulatory Testing:

  • This being a healthcare system needs to pass through multiple regulatory/compliance checkpoints.
  • Think of a scenario where the product passes through all the testing steps but fails in the final compliance checklist [testing performed by regulatory body].
  • It is a better practice to get the regulatory requirements in the starting of the development cycle itself. The same should be made part of the testing checklist.
  • By doing that, we make sure the product is certified for the regulatory checklist as well.

Upgrade testing:

  • IoT is a combination of multiple protocols, devices, operating systems, firmware, hardware, networking layers etc.
  • When an upgrade is performed, be it for the system or for any of the involved items as stated above, thorough regression testing should be carried out/strategy should be adopted so as overcome upgrade related issues.

The Internet of Things offers great potential for organizations and societies. If we manage to successfully develop the Internet of Things it will unlock a lot of value and the benefits of the Internet of Things are enormous for organizations and societies. However, there are still some major challenges for the Internet of Things. Testing is a change agent in the IoT, providing the natural link between Development and operation from the technological and cultural aspects.

--

--