App Development and Testing on Wearables

Mobile App Testing on Wearables

The wearable technology – one of the major themes for every mobile OEM – is expected to hit mainstream this year. Apple is about to launch their Apple Watch in late April, many of major mobile OEMs have introduced their own smart watches, and a myriad of smaller players have also come into play the wearable competition. It’s very likely that the wearable market (whether products are considered as eye wear, wrist wear or even footwear) will take on and quickly grow a significant market. Many of today’s available devices are based on Android Wear – and it provides an excellent base for app devs to get their stuff bolted on these devices and expose their stuff for hundreds of millions of new consumers.

This market has been already commercialized and will attain the economy of scale very quickly – are you ready to be the first to get your apps running on those gadgets?

devtestwearable

The term ‘wearable electronics’ – or simply ‘wearable’ – refers to an electronic device or product which can be worn by a person to integrate computing in some personal device that is a) wearable and b) hasn’t considered as a ‘smart device’ in the past. In simple terms, wearable gadget is used to make some routine things easier and connect the gadget with internet – and provide utilities (e.g. apps) for users. Wearables can be also seen as an advanced consumer front-end of Internet of Things (IoT). In short, wearable electronics emerges from the idea of providing a ubiquitous computing device that converges all computing needs in a single wearable gadget in the form of a pair of goggles, a wristwatch, and the likes.

Apart from the novel concept of smart and electronic textiles, the field of wearables also includes several other products – such as smart glasses, ring and finger worn scanners, footwear such as athletic, fitness and sports shoes, wrist wear such as advanced electronic watches and wristbands, and others (such as headbands and neckwear).

Typically, any wearable electronic gadget may include few or all of the following: sensors, image and speech recognition technologies, positioning and networking hardware/chips, displays and optoelectronics, and specialty monitoring devices. The emphasis on using wearable devices for sports and fitness, infotainment and gaming, health monitoring and medical purposes, lifestyle, enterprise, and industrial / limitary applications has been increasing with advancements such as stretchable electronics, flexible circuits, conducting fabrics, long lasting batteries, and smaller specialty wearable sensors.

wearables_table

Despite of use cases for each ‘vertical’ are slightly different there is one common thing for all of them – continuous access to (real-time) information.

The amount of focus and efforts all across the value chain of the ecosystem suggests that players are going full throttle to cash in the big opportunities that the wearable electronics market currently offers and is yet to offer in very near of the future. The wearable technology market already has several successful wearable electronic products and more emerging every month. But what are the things that the number one aggregators of also this industry – the app developers – must know before building their apps on those gadgets? We’ll take a look at these…

The Challenges of Developing and Testing on Wearables?

In a nutshell, these wearables represent a great opportunity for app devs as well. It is completely a new ball park with new challenges, but there are lots of potential gains here as well. Building a top ‘app’ for these devices can quickly get you in front of hundreds of millions of consumers with less competition on app offering right now. The challenges, however, remain the same as you’d be developing apps for smartphones and tablets – the need to use real devices with real specs, hardware and software.

For instance, different sizes of screens, variety of different chipsets, customizations to vanilla Android Wear by OEMs, different hardware specs in terms of memory, controls and so on, will make building apps a bit more challenging for these devices. And for sure, majority of apps built for phones and tablets won’t work on these devices – regardless of Android Wear.

wearables_v2

Wearable apps differ from regular apps in variety of ways: design, functionality, usability, user interaction, and connectivity, just to name few important topics:

Design – One of the most obvious constraint in wearables is the size of display. Typically this is significantly smaller than any display size or resolution found in phones or tablets. Because of this limitation, apps must be aligned and utilize the smaller screen size as efficiently as possible. Your app cannot draw high-resolution, detailed content on the screen, but the design must take this into consideration and show thumbnails or otherwise shrunk content in intelligent way.

Functionality – Functionality of app is typically limited and much of its functionality is combined in mobile device (if wearable communicates with a phone/tablet some functionality is typically implemented for it instead of wearable gadget itself). Furthermore, hardware is not as powerful as one on phone/tablet so this limits the functionality built in apps. In many cases, apps running on wearables can be seen as lighter / smaller versions of the apps running on phones/tablets.

Usability / User Interactions – The big question of course is that how will wearables change the UX and usability we’ve used to now with phones and tablets? Well, usability and user interface won’t be the same that is done for app running on phone/tablet. This naturally has an implication on how users interact with those apps as well. For example, app might just have few buttons and no other user interface elements that are common on apps running on phone/tablets (e.g. dropdown menus, complex and visual rich sliders). Also,

Connectivity – There are various communication protocols available for use in wearables, including standards like Bluetooth, ZigBee, and WiFi, as well as proprietary interfaces developed by semiconductor companies. Standard protocols like Bluetooth, ZigBee, and WiFi have not been designed with low power as the primary design consideration. For this reason, many OEMs have chosen to either use a proprietary protocols focused on energy efficiency or use Bluetooth Low Energy (BLE) that specifically designed to achieve the lowest possible power for short-range communication.

The Bridge Between App Creation for Phones/Tablets and Wearables?

Generally, Android Wear and similar platformatization effort with iOS (=making iOS capable to run apps on Apple Watch) is the first step to creat confidence for app devs to start building apps/games/whatever products for those gagdets. However, the platforms are already different from both software and hardware point of view. Despite app (software) and gadget (hardware) are very different whether build and tested for phones/tablets or wearables, there are some things are common: test automation frameworks.

For example, similar platforms with identical test concepts will make the testing same whether done for an app running on mobile phone/tablet or any type of wearable gadget. If you think of this, Appium (for example) provides a great foundation for testing apps on wearables as well and from test automation framework point of view it is no different whether tested app is for phone/tablet or wearable gadget.

Let’s look at an example here. We recently showcased how to use Appium/Selenium to test websites the similar way native apps get tested. Here is an example (as video) of how Appium test script hammers simple app on smart watches:

So what’s going on here: First, you can connect the gadget through ADB just like you connect to a phone/tablet:

$ adb devices

Also, connecting wearable with phone/device through Bluetooth is easy and straightforward:

$ adb -s forward tcp:4444 localabstract:adb-hub/ && adb -s connect localhost:4444

Then, you start Appium server (if using Appium locally) and start the test run targeting to http://localhost:/wd/hub/

$ appium -U localhost:4444

After this, test script is getting executed and after the session screenshots can be fetched/reviewed (as shown in video).

Interested to Test Your Apps on Real Smart Watches? Just ping me (ville-veikko dot helppi at bitbar dot com) or our sales (sales at bitbar dot com) to get access to the top Android Smart Watches out there!


The Beginner’s Guide of Using Appium for Mobile App Testing

Learn all the basics about Appium, how to set it up and how to use it for mobile app testing.

Download

  • Great post to know about Wearable Apps.

  • The wearable apps ecosystem is highly fragmented and immature. Thanks for sharing this information, really very well know about Wearable apps.

  • John

    Great post, thanks for this!

  • Yauheniya Veremeichyk

    Thank you for your experience! We at A1QA also run tests on werables devices. Learn how we happened to test the app on towels 🙂 bit.ly/2fBh2AQ

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close