Testing in the Internet of Things
Every day, we hear more about the Internet of Things (IoT). But what does this really mean? Basically, the concept refers to the digitalization of everyday objects, the way in which they communicate with us, amongst themselves and of course with the internet.
As a simple example of this, our alarm goes off, the coffee machine switches on and starts preparing the coffee early in the morning.
Within this context, it is estimated that by 2020, between 22 and 50 thousand devices will be equipped with an internet connection. On the downside, we can mention the vulnerabilities we are exposed to in this new world.
These devices fail to offer a high level of security and may be easily accessed by someone with the wrong intentions. In 2014, a study by HP showed that 70% of IoT devices are vulnerable to attacks.
How are these devices tested?
IoT faces software developers and testers with new challenges, forcing us to expand our abilities to launch high-quality software.
It also involves major innovations in terms of testing requirements, including more emphasis on unusual devices such as home appliances, thermostat interfaces and clock sensors.
With an array of different products entering the IoT market, QA teams must carefully design the best test management strategy to comply with the quality standards of these products.
Let us then analyze what the future of IoT testing may hold for software testing teams:
The importance of testing wireless connectivity scenarios:
Connectivity depends on many different wireless standards. For example, Wi-Fi, Bluetooth, ZigBee and/or 4G LTE.
For software developers, potential connectivity or infrastructure problems will inevitably shape the design of their applications. Software testing will have to cover bases such as:
● What happens to data when the connection is unexpectedly interrupted?
● Are they correctly saved and stored?
● Where will they be recovered once the service is resumed?
In order to verify this, it will be essential to conduct many testings in the real world.
Virtualization of services to simulate smart homes
One of the most promoted uses for IoT is domotics (a series of techniques aimed at automating an entire home, which integrate technology into security systems, energy management, wellbeing or communications). For testers, however, this practice can be an unknown, difficult environment to simulate. To this end, a few aspects must be considered:
● Compatibility: What other devices are present?
● Coverage: What is the house design like?
● Connectivity: What happens in limited connectivity conditions?
● Environmental: How do weather conditions affect the devices?
The virtualization of services offers a possible solution. Development/testing teams may simulate different types of homes, sensors and statuses of a given device. Also, testers may get a good preview of the conditions these services will face in the real world.
Doubling IoT security
Ensuring data privacy in IoT is crucial. Authorizations are an important support to secure IoT data transfers and transmission. For example, to avoid data vulnerability, the IoT device port interrupts internet connection when not in use. Also, the end-to-end encryption between devices or between devices and servers ensures a secure data transmission.
QA teams must analyze a wide range of possible vulnerabilities in IoT products and services. Depending on the item, this may involve:
● Applying strict password rules
● Protecting the interface from non-authorized access
● Ensuring the use of encryption when appropriate
The current challenge is to increase the scope of IoT testing. Automated tests are crucial to design, plan and implement IoT.
Real time environments in which IoT devices operate expose them to the weather, the elements and physical impacts. As a result, quality control teams must evaluate the entire range of environmental and functional vulnerabilities of IoT, including the extent to which this exposure affects functionalities.
The aggressive advent of the Internet of Things reflects the advance of technology towards mobility and diversity. With the integration and automation of tests, QA teams are already well prepared to design testing procedures that will ensure a better expansion of IoT technology.
Are you a developer?
Santiago Sosa Montiel.