Tag Archive for ‘Mobile Apps’ rss

It’s Springtime For Mobile Application Testing

In the spring of 2008 Cloud Computing was the featured “flower” that dominated the conversation in the technology flowerbed. With Spring 2010 arrived a new flower, Dev/Ops, with its Agile methods, practices, and integration between software development and IT operations.  Now, in the spring of 2012, another flower is blooming: Mobile Testing.

Testing, once called the bastard child of IT, is having a significant renaissance brought about by the emergence of a global consumption model and the subsequent mobile application explosion. With customer service and now revenue heavily influenced by application performance, the past three years have seen a significant influx of innovative test approaches arriving in the mobile development market. And all this in hopes making application performance a differentiator for their consumers.

Of these new approaches, cloud-based tools have received the most attention. In a recent IDC survey of 350 of the leading consumer-facing websites, 17% of respondents reported that they have already begun to use cloud-based test solutions. Even more remarkable is that 43% of respondents indicated that they are planning to use cloud-based solutions in the next 24 months. These are promising growth numbers for any emerging market and they are especially promising for this market.

Why is Cloud Testing blooming now, after vendor-introduced solutions have been around for more than three years? IDC’s Melinda Ballou, who conducted the survey, says, “Cloud testing is a hyper-growth market because it just makes sense”. Mobile applications are now being used by thousands if not millions of consumers.

Old, process-based approaches to application testing cannot keep pace and are too expensive for this new breed of mobile developer. Gartner’s Tom Murphy says that many will rely on manual tests and a prayer to overcome the challenges of gestures, geolocation, motion and realistically conducting load tests.

The speed, agility, scale and cost savings of test solutions built specifically to leverage the cloud make them especially compelling in the mobile application development community.

Another sign of this early spring has been an upsurge in acquisitions of test technologies during the past six months: ITKO (CA), GreenHat (IBM), and Blaze (Akamai). For all of these reasons and more, spring has come early this year for Mobile Testing and it appears that we can look forward to seeing this particular flower for many years to come.

 

Don’t Neglect Your Mobile Customers

Errors that only your mobile or tablet customers may see

Every day, more and more of your customers move off their standard desktop computers in favor of smaller and lighter alternatives. Today, many people do much of their day-to-day Internet activities exclusively on their smartphones and tablets. One can no longer assume that the majority of traffic coming to your web application will come from the traditional desktop computer; this is especially relevant for e-commerce sites.

According to data collected by Digby, this holiday season, more than ten percent of Cyber Monday shoppers used their mobile devices to make a purchase, and total mobile purchases accounted for more than 6.5% of all sales made by consumers. Both of these statistics are up significantly from last year, and the growth shows no signs of slowing down. In fact, 67% of consumers reportedly plan to make at least one purchase from a mobile device this year. As this trend continues, considerations must be made for how companies plan and structure their applications, as well the implications on performance and functional testing needs.

Recently, SOASTA was involved in a project for a major retailer preparing to launch a new and highly anticipated product. This retailer estimated that 30% of the launch-time traffic would originate from smartphones and tablets. Because of the unique recording technology built into CloudTest, we were able to construct a test that ultimately exposed several bottlenecks in the mobile order paths, which were not present in the standard desktop browser flows.

Under load, both the tablet and smartphone paths showed a significant number of errors when adding products to a shopping cart:

In the chart above, not only do we see a large amount of HTTP 500 Internal Errors (which occurred whenever the response time for a request exceeded 10 seconds), but there are also a substantial amount of asset requests that return ‘Not found’ during the test (an asset which happened to be vital to the completion of an order). Every one of these errors represented a sale that did not complete. In just 15 minutes, more than 7,000 orders failed due to these errors. To make matters worse, the results described above were produced by a test that was configured to run at only 10% of the volume and concurrent connections expected when the new product launched!

As a result of this test, the customer discovered a problem with their application code that caused these errors and changed it prior to launch.

Errors are bad enough, but what about response times?

This particular test exposed some critical scalability issues that only showed up under load – and only showed up on mobile and tablet devices. Unfortunately for our customer, it wasn’t the only issue observed during this test. Certain page and transaction times were extremely high as well – as shown in the chart below.

Here we see the response times per transaction experienced by mobile users, again at 10% anticipated launch traffic. The final step in the user experience (and in this case, arguably the most important: when the user’s payment is processed) had an average time to complete of more than 30 seconds on the mobile and tablet sites! This is in contrast to the desktop browser test scenarios which showed virtually no slowdown or issues. This helped the customer isolate a specific database contention issue that was unique to the mobile and tablet flows.

Mobile Implications

Fortunately, these issues were detected early, which allowed our customer the ability to address them. If these issues weren’t resolved, a failure of their site would have had a substantial impact on revenue.

Keep in mind, however, that your visitors are utilizing your site for more than direct purchases; they’re also looking for promotions, product descriptions, and locations or directions to brick and mortar stores. This type of usage requires additional design considerations for the layout of your site’s pages. Besides the obvious considerations for the physical differences of the device itself (screen size, touch screen input, etc.) we must also consider bandwidth availability and transfer speeds of mobile devices, and keep those constraints in mind when executing our tests and analyzing results.

Because mobile devices typically take longer to complete a transaction (especially on 3G and Edge networks), the resulting connections from those devices are kept open longer. This has the potential to increase the total number of active connections when user traffic is high. Failure to tune your application and network to properly handle these longer connections may result in missed opportunities. Even if the application servers have ample system resources to handle more traffic, potential customers will be unable to access the application because of insufficient connection availability.

Whether it’s a mobile site or a mobile application, SOASTA CloudTest is able to record directly from mobile devices, allowing anyone to create robust test scenarios without the guesswork involved with user-agent spoofing or other artificial means of deceiving your servers. CloudTest provides the analysis tools required to determine what users would experience when they visit your site, regardless of where they are and what type of device they are using.

“Minority Report” Defining Today’s User Interface

Think back to Steven Spielberg’s 2002 classic, “Minority Report”, the movie that explored the future of human/machine interface in 2054. It was both cool and exciting, and it was also years away from reality. Or was it? Here we are, now ten years removed, and some of these concepts, gesture-based applications (everywhere), hovering gestures (Apple patent), 3D navigation (everywhere), and voice (Siri), are very much real.

John Underkoffler is the UI designer who built the technology for Minority Report and in real life, too. His 15-minute TED presentation is well worth watching.

From logistics and supply chain to financial services, new applications evolve every single day to leverage advancements in man and machine user interfaces. In many cases there is simply no other option than to rapidly wade through the enormous amounts of data these applications generate in search of the actionable intelligence.

One of these Big Data issues occurs while performance testing web and mobile applications. These applications simulate millions of people around the globe hitting a web site or mobile application to provide predictive analysis as to where performance bottlenecks may occur. In doing so, they generate terabytes of performance-related, real-time data. Analysis of this data is extremely difficult using traditional, one-dimensional test tools because problems are often buried amongst layers and layers of data.

Over the past few years, companies such as Splunk and SOASTA have emerged because their multi-dimensional capabilities enable testers to see several pieces of performance data on the same timeline and in a single view. These kinds of user interfaces allow for real-time resolution to problems such as performance for a growing number of leading companies.

Of course new problems arise as these problems are solved. The next generation will surely struggle with delivery of a stable user experience when application UIs are gesture-based, voice-based or even 3D. I will leave that question for another day. The bottom line is this: Minority Report has arrived. Is your team ready?

 

Consumer Websites Must Stop Cheating on Their Tests

Another week goes by and more leading consumer websites crashed and burned, causing losses in both revenue (millions) and, perhaps more importantly, in consumer confidence in ecommerce. This week fail whales were sited swimming in the oceans of one of the world’s largest retailers, a leading children’s toy manufacturer and the industry’s leading online payment processor. PayPal alone (which was down for several hours this past Friday) may have lost hundreds of millions of dollars for itself and the enormous network of retail outlets that rely on them for their financial transaction services.

So why are fail whales continuing to happen so frequently? Don’t these companies test their sites? The answer, for load and performance testing, is of course they do…most of the time. In fact, some companies are spending millions of dollars on people, hardware and tools to load and performance test their websites. So why all the fail whales? One answer may be that organizations that have chosen the wrong testing tools or test service are, in fact, cheating on their tests!

Consumer facing website have become the primary channel of revenue and product information for millions of companies around the globe. So why cheat on testing? The pressure to deliver (business agility) is enormous today, for all IT organizations, and may well be a key reason cheating has become a common practice. Many test subcontractors and test companies cheat on their tests simply because they run out of time. According to PCWeek, this is what happened to AT&T on the pre-registration site for the iPhone4 launch. Due to a last minute feature upgrade they had no time to adequately performance test the site, which, of course, crashed an hour after it was launched, due to a 10x spike in traffic, creating a PR and revenue nightmare! Other organizations cheat because they just can’t afford the resources (people, hardware and tools) to properly test their sites in the first place.

The most common way to defend this cheating is to use semantics to obscure the shortcuts taken. When asked by an enraged business owner “did you test the site before going live?”, the answer is always “of course we did”. The problem is that it’s the wrong question. The right question is “did you test the site by accurately simulating real users performing both normal and unusual tasks, at and above expected volumes?”. For instance, if the goal was to simulate 5,000 concurrent users, a tester may respond that they tested for 5,000 “page views”! This is when language matters, since 5,000 page loads rarely equals the activity of 5,000 real users. In fact, it likely represents only a fraction of the target volume. By simply substituting page views or transactions for accurately simulating the activity of users on the site they almost certainly won’t reach the expected goal set by the business owner.

Another method of cheating the system is to adjust the timings of test scenarios. This practice is widely used by the testing community, primarily due to the cost of hardware and software when using traditional testing tools. For example, if buying a plane ticket online typically takes about 10 minutes, a clever tester may reduce the timing of this process in the test to just 1 minute. This, on the face of it, allows many more “users” into the system, but it doesn’t accurately simulate real world conditions. Finally, many leading edge companies are beginning to realize that the only way to accurately test a site is by including production testing. Testing only in the lab, and then extrapolating the results for the production environment, leaves far too many variables unaccounted for in the complex deployment environment that is the web. Again, cheating the testing system.

Whatever the reason for the cheating (lack of time, people, or resources) we must change this game now to maintain a high level of consumer confidence and continue to expand the growth of online commerce.

Email Us!
Subscribe to our Feed!
Join us on LinkedIn
Find us on Facebook
Follow our Tweets
See our pics