Methods For Testing Mobile App Performance Using LoadRunner

People using smart phones require the mobile apps to perform with the same effectiveness as the desktop software does. Due to inundation of numerous applications in the virtual store, the competition is extremely high. As a result, robust apps are in demand that pass rigorous testing parameters. If you are an app developer, use LoadRunner for mobile applications as it works extremely well with the native version. Although web apps are tested with the help of open source platforms, it is the LoadRunner that plays an important role to enhance the capability of the mobile based software.
app testing
Testing is a complex process where numerous devices right from Android to iOS are involved. There are different versions for native and web applications, however LoadRunner can resolve all the issues with the help of certain protocols.
HTTP/HTML:
It records the browser and native scripts that query the server with the help of http/html protocols. The whole process takes place at the transport layer of the TCP/IP model. Network traffic is recorded in a separate file called PCAP and then it is used to create a visual script. Even third party emulators can be used to generate the script logic.
True client essential for native mobile:
True client technology is used to record the scripts of the browser based or hybrid mobile applications. Apps are loaded onto the mobile devices and are tested end to end mode in order to find out errors. To make the process successful, one should install mobile test center app on the device. It consists of emulators that help to perform, extensive testing and build the most memorable apps in the market.
Mobile web protocol:
The protocol plays an important role in recording the user activity in the mobile applications based on the browser scripts. The whole process takes place in the TruClient browser that is modified to be an emulator.
SMP or SAP mobile platform:

  • The protocol helps the users to create .NET scripts according to their requirements an specification. Files are auto generated on SMP, however the script should not use threading as is the norm in .NET and Java environment because they might degrade the scalability of the testing process.
  • In addition, threads might hamper the measurement procedure at the client’s site. Users cannot invoke functions from the thread because their behavior remains undetermined.
  • In order to record the script using SMP, it is vital to generate the file such as Action.CS, Vuser_ init.cs, Vuser_end.cs.
  • The user should click on the new script and solution link and select SAP mobile platform.
  • Once the files are generated, they are copied into the script folder.
  • After the process is completed, you should invoke the save button, close the script file and reopen the content.
  • Thereafter, the location of the .DLL file needs to be added to the Shared DLL folders situated under the .NET settings located in the Run time settings menu.
  • You can replay the script to watch it in action with the SMP protocol.

Therefore, LoadRunner is useful for converting captured network traffic to HTTP user script, using either the provided tools or by using conventional capturing tools which can help you produce performance scripts for mobile app performance.

11 Guidelines for Mobile App Performance Testing

Performance testing services is done to provide information about apps regarding speed, stability, reliability and scalability. It also determines speed & degradation of systems with different configurations under both controlled and uncontrolled standards.  More importantly, it unfolds what needs to be improved within an app before the product is launched in the market.

The General Guidelines for Performance Testing
The methodology for software performance testing can vary in different steps, but the objective of the whole process remains the same. The following are the list of general guidelines for performance testing of mobile apps:
1) Plan for Test: Once we are ready for a test, we need to have a proper planning and check for available resources. The performance test plan should describe the overall strategy for testing the complete mobile app.
2) Identification of Testing Environment: While testing, it is important to identify the software, hardware, tools and network configurations. This will allow the design and development team to identify the performance test errors at an early stage.
Different types of testing environment:
a) Replica of production system
b) Actual production system
c) Production system with less number of servers of low specifications
d) Production system with less number of servers of same specifications
3) Define Necessary Formats for Displaying System Usage: Necessary formats need to be defined for measuring the performance of an application. Some of the possible formats are:

  • Task Distribution Diagram: This gives information on the number of users for a particular process and the time taken to load. The peak and off usages are determined through this.
  • Transaction Profile Sheet: This provides information about the transaction names, a summary of a number of transactions at a particular point of time, screen navigation, etc.
  • User Profile Diagram: This depicts the user load time and pages accessed by the users

4) Deciding what to test first: The following are some criteria for decision-making about which process to be tested first. It is a very important step as it guides the total performance testing process.
·         Processes having the highest business risks are tested
·         Processes that are most frequently used are tested
·         Applications’ peak usage hours of the day are analysed
·         Peak days of the month, quarter, and year
·         Processes that are linked
·         Processes which are resource intensive
5) Documenting: The purpose of documenting the process is to obtain information necessary to create virtual users such as:
·         User Actions
·         Expected results of each action
·         Input data fields
·         Valid data for input
Identifying these properties shall give a clear scope of performance test against each user action.

6) Establish which data to use: Before starting, it’s important to establish the data to be used. Any real-time data can also be imported from the development servers and the same is used to analyse results and reports.
7) Define what resources are to be tested: Performance testing involves defining the resources that are involved in testing. This includes app servers like WebSphere,  Weblogic, Tomcat, IIS Server; database server like DB2, Oracle and network resources. These resources form the total system and therefore defining them is critical.
8) Performance testing should be done after functional testing: There is no question of doing performance testing when functional testing is not done. Functional testing confirms the working of the system as expected with all aspects of the UI, multilingual navigation, navigation between pages and off-site, etc.
9) Done at the time of system-testing phase: System testing is a phase of software testing in which the complete system is tested. So, performance testing should be taken up during system testing phase only.
10) Tools should be identified: There are plenty of tools available for doing performance testing. But, we need to identify tools that may be useful for system testing.
11) Execution and Communicating Results: Once the performance testing is completed, we need to summarize the findings and test results. Later, it is distributed to respective resource owners for making corrections if any.
Once the corrective measures/fixes are done, the entire tests need to be repeated and the final summary report is taken.
Conclusion
While an inclusive performance testing strategy will continue to kill bugs for all tech innovations, this will certainly help you to bring the best out of your testing efforts. With perspectives and tools emerging each day, testers need to leverage on this testing mechanism for their mobile app testing services.