My FeedDiscussionsHeadless CMS
New
Sign in
Log inSign up
Learn more about Hashnode Headless CMSHashnode Headless CMS
Collaborate seamlessly with Hashnode Headless CMS for Enterprise.
Upgrade ✨Learn more

How can you get performance testing results of native mobile application simply and fast?

Deactivated User's photo
Deactivated User
·Jan 30, 2017

image1

As everything, it is easy, we just use NeoLoad in our daily work. Market provides us with a wide range of commercial and free of charge tools for performance, load and stress testing. We choose Neoload due to several important reasons, they are important exactly for performance testing of downloaded mobile applications and it is difficult to find them in other tools.

Advantages of neoload and why we use it in our testing:

  • wide range of settings for tests conduction: from changing active users quantity during test running to changing type of mobile network that smartphone supports;
  • different test scenarios can be executed for several groups in the same time (a lot of virtual user groups with different parameters and different test scenarios can be created, in the same time can be emulated that all these groups use tested application in the same time);
  • this tool can emulate different types of network in use (3G, 3G+, H+, 4G LTE, etc.);
  • it supports a variety of mobile devices (in the last version NeoLoad 5.2.2 there are 11 Android devices, 8 of iOS present, also Blackberry, Symbian and Windows );
  • ability to compare test results of different test executions;
  • Qualitative and comprehensible visualisation results of testing;
  • Supports protocols HTTPS, HTTP and HTTPS proxy, basic web-authentication and cookies, determines data while recording the script and uses recorded data during execution.

Performance tests recording for web application and for native mobile applications mostly has no significant differences, many actions are identical to those of web application testing. Additional tools make recording of test cases simple and bring them to a similar format. Steps of tests execution are the same: tests recording, setting and tests execution, get results and make analysis. The difference lies only in the availability of two instruments: the first with the installed application under test, and the second one - with the program to execute testing.

Another feature is additional settings for recording actions on mobile phone via proxi:

  • cell phone should be connected to the same wi-fi network as the device with tool that will record test cases;
  • setting mobile network of device via proxy.

After this actions and installation of an application for checking its performance on a cell phone we start to record scenarios. At the main page of NeoLoad find ‘Start Recording button’, press on it, pop-up window ‘ Start Recording’ opens, in our case we should select ‘Identify as’ checkbox and choose one of proposed devices from drop-box. You can choose one of the browsers, if you test web application via cell phone or choose device, if you test native mobile application.

3d7f24de-5d67-441a-837f-eb172c25ede6

List of proposed mobile devices is extended, here the most frequently used devices with Android and iOS operating systems are presented.

3d7f24de-5d67-441a-837f-eb172c25ede6

After choosing a device for test recording, scenarios of native mobile application start to take actions on a tested application. Take actions that have been premeditated before, execute test plan step by step. When you finish last action in application, press ‘Stop’ button on the main page of NeoLoad. Notice that NeoLoad has ‘Pause’ function, pressing on it you can correct your scenario before continue recording. When record is ready, it is saved in the following way: Design button > User Paths tab> User Paths section> Action folder.

3d7f24de-5d67-441a-837f-eb172c25ede6

You have an ability to sort your actions by named folders during recording scenarios, just write folder name to ‘Container’ at the NeoLoad recording panel. After you finish recording and saving test plan, you can add parameters of virtual user groups for tests running. All settings are available in the Runtime tab, you can create several groups of users with different parameters, choose set tests running duration: it can depend on quantity of iteration, duration for a certain time or you can set time in hours, minutes or even seconds. For each virtual user group quantity of Simulated users, quantity of iterations can be chosen as well as in other tools for testing performance. NeoLoad proposes to choose behavior for each of groups: whether it will be permanent or increasing load, one or several peaks of iterations, in which time of test execution they would be carried out. We use NeoLoad because it provides a wide range of settings parameters.

3d7f24de-5d67-441a-837f-eb172c25ede6

When scenario is recorded, set all settings of virtual user groups and tests can be run, you just should press ‘Run’ button from menu on the top of the page. Results of testing will be displayed in ‘Result’ page in real time and automatically sorted by such groups as Test Summary, Values, Graphs, Errors, Alerts, etc. Summary tests execution can be saved for future exploitation in . nlp format file, than it can be changed, edited, corrected, you can add additional test cases and scenarios to your saved Test plan.

6df9627b-d66d-4ae9-a557-21317fca18f4-2

NeoLoad displays results via graphics in detail under graphic description, in our case average response time for sent requests is 4.78 sec and maximum near 15 sec, this indicators displayed when 50 active users try to login to application simultaneously. All charts can be found at the right side of the Test Summary page in the Main graphs section.

1b271889-418e-4106-8258-4647cc133e5e

When we analyze results of application’s work, we always make comparative analysis of tests that were run, for example we should compare tests that were run on different platforms, tests before and after defects fixing, after adding solution that make our application faster for requests. In Graphs section you can choose graphs for matching and comparing, add or delete some charts. In most cases we use Response times charts and charts from ‘Top 3 pages folder statistics, this graphs show performance testing more clearly, because we are interested in speed of responses and number of errors, places where they were found.

0822c15f-e433-4205-945a-03863bf8bbd7-2

Detailed description of errors for each request we see in the Error tab, there you can find request and response from server. All data about time of responses can be download to . scv file format from Value tab and can be used for creation of new charts and to make additional analysis of requests with errors for Summary report.

512f29e8-c8f7-45eb-9461-f17880699c7e-2

All data of NeoLoad report can be exported in . csv, .doc, .pdf, .html file formats or export as image, if it is graph. This representation gives ability to use results in the Summary Quality Assurance report.

d43f35fc-8298-4b1d-a891-71d5b4a017d4-2

NeoLoad is a very useful tool for performance testing, Steelkiwi quality assurance team used it for testing of native mobile application, due to easy connection to cell phones, simple tests scenarios recording, due to the ability to set a lot variants users behavior during test execution, ability to compare results of tests in different conditions. Using this tool we can make performance, load and stress testing, get full and clear report. Recording and test execution does not take more than 2 hours. As a result, using additional utilities you can get information about application stability work, take the necessary measures to identify heck bottles, deficiencies and ensure the desired performance.

If you have missed two articles about Performance Testing for web applications check it here:

  1. Graphical representation for performance testing
  2. How QA experts use Apache JMeter in daily work