In the performance testing of mobile applications, how to accurately and comprehensively capture user actions and generate reusable test scripts is always a major challenge for test engineers. JMeter, as a powerful open source performance testing tool, not only excels in Web testing, but also has unique advantages in mobile app recording.
So, how to utilize JMeter for mobile app recording testing? How exactly is its recording feature implemented in mobile apps?
JMeter's mobile app recording feature mainly captures user actions through its built-in HTTP(S) Test Script Recorder. In practice, test engineers usually configure JMeter as a proxy server and connect to the proxy via cell phone to record all network requests. For example, in an e-commerce app performance test, the test team successfully recorded the complete operation flow of the user from login to order through JMeter, and based on these recorded scripts, conducted large-scale concurrency testing, which ultimately helped the team find and optimize multiple performance bottlenecks.
I. Principle of proxy recording
1. LR/Jmeter recording is for the network communication protocol level, it only cares about the client and server-side communication packets
2. LR/Jmeter concurrency testing is actually concurrent client-server communication processes
3. Pressure is realized by means of multi-process/multi-threading, which is currently supported by popular OSes. Each process/thread sends 1 request script packet to the server backend.
4. LR/Jmeter recording script using proxy.
(1) The data requested by the client is first sent to the proxy server (recorder), which forwards the data to the server side;
(2) The response data from the server side is first sent to the recorder, which then responds to the client.
Second, JMeter mobile app recording method (cell phones and jmeter must be in the same network environment)
1, create a thread group, and add HTTP request defaults under the thread group
Note: There are two ways to use the HTTP Request Defaulter
If no value is entered for server or IP, port, or path, then proxy recording can record operations at any address (generally no value is entered by default)
If the server or IP, port, or path has an input value, then proxy recording can only record operations where the IP address is entered.
2. Add recording controller under the thread group to facilitate effective control and management of recorded operations.
3. Add an HTTP proxy server under Workbench
4. Configure the port number of the proxy connection and the location where the recording operation is stored.
(The port number can be entered arbitrarily and needs to correspond to the browser's to facilitate mapping)
5, JMeter configuration is complete, you need to configure the cell phone, first query to the phone and computer in the same network environment address
(Note: The cell phone and computer must be in the same network environment in order to record)
6、Computer and cell phone in the same network environment, configure the phone's proxy server
7, after the configuration is complete, use the phone to operate and view the JMeter recording situation
(A recording record under the recording controller indicates that the mobile app has recorded successfully)
With the popularization of mobile Internet, mobile apps have become an indispensable part of people's lives. Whether it's socializing, shopping or paying, users are demanding more and more performance from their apps.JMeter's mobile app recording feature provides a strong support for mobile app performance testing, which helps enterprises to keep an edge in the competition.
If you're doing performance testing of mobile apps, try JMeter's recording feature. Not only is it free, but it can also be easily integrated into your existing testing process, making it a great choice for improving testing efficiency.
Recorded testing of mobile apps through JMeter not only helps the testing team to quickly generate high-quality test scripts, but also effectively improves the comprehensiveness and accuracy of the tests, thus ensuring the excellent performance of the apps.