Testing on Mobile and Smart Products
March 28, 2016

Kevin Dunne
QASymphony

Mobile and Internet of Things systems are a popular yet nascent industry subject to the traditional growing pains of innovative sectors, requiring distinct testing approaches.

When it comes to testing, software is software, right? Not exactly. Mobile apps keep growing, and now with the predicted growth in Internet of Things applications and technologies, testing organizations have new considerations and limitations. If your company is involved in developing software for the Web, mobile devices and IoT platforms, you may need a few different types of testers, tools, and process to succeed. This blog outlines some top considerations for testing on both mobile and IoT applications.

Mobile Everywhere

Mobile apps succeed when they have a simple, elegant design, run fast and meet customer expectations. Behind the scenes, however, developing effortless mobile applications is not easy or simple. Compared with Web applications, mobile apps are affected by a wide range of variables, including: network diversity, battery life, location and the speed at which users are traveling. The more variables, the more testing scenarios a company must account for in testing. Real-world testing is generally accepted as imperative at some point in the process, given the array of devices and networks that people are using when they open a mobile app. Mobile apps primarily focus on two core issues: the user interface/experience and the quality, security, and speed of the connection from the app to the server.

Automated tools for mobile application testing have become much more reliable, making the job of the tester a bit easier today. Even so, testers must take into consideration all the versions of iOS, Android and Windows-based phones and tablets in their user base; it’s not economical to thoroughly test them all. Focus your testing efforts on the most popular devices and use cases in your user base and from there, the most-often used and critical path features in the application.

Due to the need for real-world testing — across all those devices, networks and locations mentioned earlier — beta testing is used heavily to get economical coverage across the potential mobile variants. Where companies often fail, however, is in properly managing the beta testing process. Beta users need guidance so that they will interact with the desired features and tasks, and in turn, provide useful feedback. To fill the gap in incomplete beta testing, companies can take videos of users testing an app to track where they often get stuck or confused. Crowd-testing services can help by managing the process of crowd sourced testing, cost-effectively increasing device test coverage.

Internet of Things on the Rise

Testing IoT or hyper-connected applications requires knowledge of both hardware and software — and the intersection between the two. IoT applications incorporate the hardware of the smart product and the software that controls it along with the user applications that interact with the product. That’s a lot of dependencies and a lot of pieces to test. When troubleshooting an issue or researching a vulnerability, a tester must investigate the mobile and enterprise applications that collect, analyze and display the IoT data, the various network connections across which that data travels, the IoT appliance’s hardware and its software.

Therefore, testing for IoT systems usually requires more manpower and time—along with more specialized resources. Individuals who develop and test products such as smart home security systems or thermostat don’t often have the same skills as the consumer app testers, and vice versa.

What IoT testing also requires is deep investigation into the “what-ifs” and corner cases, or those problems which occur outside of normal operating parameters. Take a home security system: if there is a power outage and the appliance doesn’t restart automatically when the power comes back on and no one is around to do it manually, that could cause a problem.

If a smart product breaks, it’s not a simple matter of uninstalling and reinstalling a new piece of software on the fly. If there is a suspected hardware problem, the customer usually needs to return the device for repair or replacement by the manufacturer. Developers and testers should aim to battle test IoT products more stringently than a mobile app, to avoid these situations. The goal for testing is to not only eliminate or minimize these risks but also create self-healing capabilities within the products.

As with mobile apps, beta testing is important in IoT to gain the real world feedback that’s not as credible in a lab test environment. Beta testing smart products is considerably more expensive than releasing cheap software code, due to the cost of the appliances, which means the beta community will likely be much smaller. Companies may opt to use internal employees as beta testers, allowing them to more easily collect, diagnose and repair troublesome devices.

As with mobile apps, IoT testers should identify and target the highest-risk scenarios for their testing plan: those which focus on user experience and stability. IoT apps should also be configured to collect and deliver more alerts and logging data than mobile apps, due to the higher number of components involved. This will make it easier to prevent, troubleshoot and fix problems when they arise.

It’s an exciting time to be a software tester today, due to the ever-growing array of software types and products that run software, all of which need quality assurance expertise. Testers have the ability to grow their careers quickly, through developing a deep understanding of these new applications and smart products which tightly integrate hardware and software. Companies hiring and managing these testers have the opportunity to create new best practices, which once finessed, can push their product to the top of the heap. After all, no matter how cool an app or smart product – if it’s clunky, users and customers won’t stick around for long.

Kevin Dunne is VP of Strategy & Business Development at QASymphony.

The Latest

September 20, 2018

The latest Accelerate State of DevOps Report from DORA focuses on the importance of the database and shows that integrating it into DevOps avoids time-consuming, unprofitable delays that can derail the benefits DevOps otherwise brings. It highlights four key practices that are essential to successful database DevOps ...

September 18, 2018

To celebrate IT Professionals Day 2018 (this year on September 18), the SolarWinds IT Pro Day 2018: A World Powered by Tech Pros survey explores a "Tech PROactive" world where technology professionals have the time, resources, and ability to use their technology prowess to do absolutely anything ...

September 17, 2018

The role of DevOps in capitalizing on the benefits of hybrid cloud has become increasingly important, with developers and IT operations now working together closer than ever to continuously plan, develop, deliver, integrate, test, and deploy new applications and services in the hybrid cloud ...

September 13, 2018

"Our research provides compelling evidence that smart investments in technology, process, and culture drive profit, quality, and customer outcomes that are important for organizations to stay competitive and relevant -- both today and as we look to the future," said Dr. Nicole Forsgren, co-founder and CEO of DevOps Research and Assessment (DORA), referring to the organization's latest report Accelerate: State of DevOps 2018: Strategies for a New Economy ...

September 12, 2018

This next blog examines the security component of step four of the Twelve-Factor methodology — backing services. Here follows some actionable advice from the WhiteHat Security Addendum Checklist, which developers and ops engineers can follow during the SaaS build and operations stages ...

September 10, 2018

When thinking about security automation, a common concern from security teams is that they don't have the coding capabilities needed to create, implement, and maintain it. So, what are teams to do when internal resources are tight and there isn't budget to hire an outside consultant or "unicorn?" ...

September 06, 2018

In evaluating 316 million incidents, it is clear that attacks against the application are growing in volume and sophistication, and as such, continue to be a major threat to business, according to Security Report for Web Applications (Q2 2018) from tCell ...

September 04, 2018

There's a welcome insight in the 2018 Accelerate State of DevOps Report from DORA, because for the first time it calls out database development as a key technical practice which can drive high performance in DevOps ...

August 29, 2018

While everyone is convinced about the benefits of containers, to really know if you're making progress, you need to measure container performance using KPIs.These KPIs should shed light on how a DevOps team is faring in terms of important parameters like speed, quality, availability, and efficiency. Let's look at the specific KPIs to track for each of these broad categories ...

August 27, 2018

Protego Labs recently discovered that 98 percent of functions in serverless applications are at risk, with 16 percent considered "serious" ...

Share this