The IoT is a network of physical devices or things that are embedded with sensors, actuators or programmed software to build connectivity. The “Internet of Things” installed base will grow to 26 billion units by 2020, says Gartner. Other researchers predict that the estimate may go above 100 bn. These sensors are transforming how we work and live. The smarter cities, railways, healthcare, manufacturing, retail, home, workplace, insurance are all evolving with the combination of sensors and applications. The influence of IoT is very much evident across different verticals as product designers dream up ways to explore and exploit real-time machine-to-machine connectivity and intelligence. IoT is tied by 3 main components –
Things: What we refer to “Things” here are real-world objects or devices that include the sensors and embedded software required to communicate with other environments.
Communication: the core networking component that helps ‘things’ connect with each other.
Computation: is often done on the server, mobile device to make intelligent decisions based on user behavior and analysis.
These days, everything can be controlled from your smartphone – including security systems, your door-locks, refrigerators, and thermostats. Wearables and related technology is expanding – provides real-time data through fitness trackers, smart watches, GPS navigators, etc.
This article talks about the paradigm shift required in QA organizations to embrace the technology and mindset changes in IoT’s broad spectrum.
Types of Testing:
Connectivity testing: to ensure that the ‘Things’ and communication infrastructure are connected.
Exploratory testing: This is used on an empirical system where you have an opportunity to inspect & learn and think beyond the pre-defined testing procedures.
Compatibility testing: As devices, sensors, mobile OS, protocol versions are upgraded, this test is necessary
Performance testing: to test the internal capabilities of the embedded systems, network communication
Security testing: to uncover issues of privacy, spying and autonomy
What should the QA look for in IoT world?
Let us look at these as opportunities rather than labelling them as Challenges. The role of the QA is critical as the IoT expands its horizon comprising of devices, sensors and applications. It’s essential for the QA to have a bigger picture and understand from the business /product and user levels on how these work and generate value.
Interoperability: devices should support the features, work with other devices and external implementations.
Security: it’s crucial to tackle security and data privacy issues across IoT ecosystem. These include – Identify and authentication, Data encryption, Data protection, Storage (including cloud).
Usability and User experience tests: how the human-machine interactions happen and the rea-time usability
Creating QA environment: to validate the interfaces along with growing data volume. The development sandboxes can be leveraged with the help of virtualization tools.
Hardware and software conjunction with intelligent software means that mere functionality testing is not sufficient.
The end-to-end IoT system should be working: example- a shipping tracking system should ensure correct delivery of product. So, not only are the individual systems expected to work efficiently, but also the interfaces should work appropriately.
Test As-a-user mindset versus test against requirements: IoT focuses on ‘experience’ rather than mere feature-driven products.
Tests to span overall digital portfolio: to simulate real-time experiences spanning a wide range of digital components.
Integrated tests: As the IoT landscape widens, there is a critical need for continuous and flawless integrated tests to be conducted.
Merge the skills: The software development world is shifting left, which means testers /QA are no more viewed as a separate team. In-fact the test planning and configurations start right from the analysis phase. The testers are also expected to know engineering practices to a considerable level to work along with developers.