Hi Raghav! A big thanks to you! Your video was a life saver!! I've been struggling while performing load testing for my mobile applications, but now it has become quite simple! Thanks again🙏🏻👍🏻
@@RaghavPal Hi Raghav..iam confused about something.this video is about web application in mobile or mobileapp in phone? can we do performance testing of mobile app in jmeter?
Hi, Thanks for this insightful video, However, we are looking for mobile native application performance testing but not mobile web performance. is it feasible to record and test performance and simulate load for native Android and iOS mobile applications with Jmeter?
Inderjeet Yes, it is feasible to record and test performance and simulate load for native Android and iOS mobile applications with JMeter. However, there are some limitations to consider. * JMeter is a Java-based tool, so you will need to have Java installed on your machine. * JMeter can only record and test HTTP traffic, so you will need to configure your mobile device to proxy all HTTP traffic through JMeter. * JMeter is not a native mobile app testing tool, so it may not be able to capture all of the performance metrics that you are interested in. Despite these limitations, JMeter can be a useful tool for testing the performance of native mobile applications. Here are some steps on how to use JMeter to test native mobile applications: 1. Install JMeter on your machine. 2. Configure your mobile device to proxy all HTTP traffic through JMeter. 3. Open JMeter and create a new test plan. 4. Add the "HTTP(s) Test Script Recorder" element to the test plan. 5. Start the HTTP(s) Test Script Recorder and open the native mobile application on your device. 6. Use the native mobile application as you would normally. 7. Stop the HTTP(s) Test Script Recorder when you are finished using the native mobile application. 8. Save the test script. 9. Run the test script to test the performance of the native mobile application. You can also use JMeter to simulate load for native mobile applications. To do this, you will need to create a virtual user (VU) that represents a single user. You can then configure the VUs to perform specific actions, such as opening the native mobile application, navigating to different screens, and performing actions on those screens. JMeter is a powerful tool that can be used to test the performance of native mobile applications. However, it is important to understand the limitations of the tool before using it.
Sreelaxmi JMeter can be a valuable tool for testing OBD (On-Board Diagnostics) devices, especially when you want to simulate load and performance scenarios. Here's how you can use JMeter for OBD device testing: 1. Load Testing with JMeter: - Load testing helps determine how well your OBD system handles a large number of requests or data points. - Create a JMeter test plan that simulates various OBD requests (such as diagnostic queries, sensor readings, or firmware updates). - Configure Thread Groups to represent the number of concurrent users or devices. - Add HTTP Request samplers to simulate OBD requests to your device's endpoints. - Monitor response times, throughput, and error rates to assess performance under load. 2. Stress Testing with JMeter: - Stress testing evaluates how your OBD system behaves when pushed beyond its limits. - Define scenarios where the OBD device receives an unusually high volume of requests or data. - Gradually increase the load until you find the breaking point (where the system starts failing or responding slowly). - Use JMeter assertions to validate responses and detect errors. 3. Custom Plugins and Extensions: - JMeter has a rich ecosystem of plugins that can enhance its capabilities. - For OBD-specific testing, consider using custom plugins or extensions: - Custom samplers: Create custom samplers to send OBD-specific commands (e.g., PID queries) to your device. - Listeners: Use listeners to capture and analyze OBD responses. - Scripting: If needed, use JSR223 elements (e.g., Groovy scripts) to manipulate OBD data or simulate specific scenarios. 4. OBD Protocols and Communication: - Understand the OBD protocols your device supports (e.g., CAN, ISO 9141, J1850, UDS). - Configure JMeter to communicate with your OBD device over the relevant protocol (e.g., via HTTP, TCP/IP, or Bluetooth). 5. Testing Real Devices: - Connect a real OBD device to your test environment (e.g., a car with an OBD-II port). - Use JMeter to send actual OBD requests and validate responses. - Ensure that your test environment is safe and complies with any legal or safety requirements. 6. Monitoring and Reporting: - Use JMeter's built-in graphical reports to analyze performance metrics. - Monitor OBD-specific parameters (e.g., RPM, speed, coolant temperature) during testing. Remember that OBD testing involves real-world scenarios, so ensure that your test environment closely resembles the actual usage conditions. Additionally, consult OBD device documentation and specifications to tailor your tests accordingly. ..
Hi Raghav, You are is very much helpful. Could please make a video on how to use jmeter and mobile devices connected with different network and do performance test on mobile applications.
Sathvuka I will plan. For now, this can help: ## Using JMeter and Mobile Devices for Performance Testing Mobile Applications Mobile application performance testing is crucial to ensure a smooth and responsive user experience. JMeter is a popular open-source tool that can be used to test the performance of mobile applications across various network conditions. This includes testing on different devices connected to different networks, such as Wi-Fi, 3G, 4G, and LTE. Here's a guide on how to use JMeter and mobile devices for performance testing mobile applications: *1. Prerequisites:* *JMeter:* Download and install the latest version of JMeter. *Mobile devices:* You will need several mobile devices with different operating systems (Android and iOS) and network access. *Mobile Proxy Server:* You can choose from various mobile proxy servers like Charles Proxy, Fiddler, or HTTP Toolkit. *Application under test (AUT):* The mobile application you want to test. *2. Set Up Mobile Proxy Server:* 1. Install the mobile proxy server on your computer. 2. Configure the proxy server settings on your mobile devices. 3. Connect your mobile devices to the desired networks (Wi-Fi, 3G, 4G, LTE). *3. Record Test Script:* 1. Open JMeter. 2. Add a Thread Group. 3. Add an HTTP(S) Test Script Recorder. 4. Configure the recorder settings: *Port:* Set the port number to match the mobile proxy server port. *Target Controller:* Select the Thread Group. *Target Host:* Enter the hostname or IP address of the mobile device. *Target Port:* Specify the port number used by the mobile application. 5. Start the recorder and open the mobile application on your device. 6. Perform actions within the application as if you were a real user. 7. Stop the recorder when you have recorded enough traffic. *4. Create and Configure Test Plan:* 1. Add a Test Plan to your JMeter project. 2. Add the recorded HTTP(S) Test Script Recorder as a child of the Test Plan. 3. Add any additional components you need for your test, such as: * Timers: To control the delay between requests. * Assertions: To verify the response values. * Listeners: To view and analyze the test results. 4. Configure the Thread Group: * Number of threads: Set the number of concurrent users to simulate. * Ramp-up time: Specify the time it takes to reach the peak number of threads. * Loop count: Set the number of times to repeat the test script. *5. Run the Test:* 1. Start your mobile proxy server and connect your mobile device to the desired network. 2. Start the JMeter test. 3. Monitor the test results in JMeter. 4. After the test is complete, analyze the results to identify any performance bottlenecks. *Tips for Performance Testing Mobile Applications:* *Use real devices:* Emulators and simulators may not accurately represent the behavior of real devices. *Test on different networks:* This will help you understand how your application performs under different network conditions. *Vary the number of users:* This will help you identify any scalability issues. *Monitor resource usage:* This will help you identify any bottlenecks on the mobile device or server. *Use a load balancer:* This will help you distribute traffic across multiple servers and improve performance. *Automate your tests:* This will save you time and ensure consistency. By following these steps and using the available resources, you can effectively use JMeter and mobile devices to test the performance of your mobile applications across different network conditions. This will help you ensure that your applications are providing a smooth and responsive user experience for all your users.
@@RaghavPal thank you for your valuable time. But when I try to start the jmeter test , it is showing like port is already in use. Actually i have set the port of mobile proxy server ,i.e., fiddler.
It seems you're facing a port conflict between JMeter and Fiddler while trying to start your performance test. This can be frustrating, but there are ways to resolve it: *1. Identify the conflicting port:* * Check the exact port number JMeter is trying to use by looking at the error message or JMeter configuration. * Look for any processes using the same port in Task Manager/Activity Monitor (depending on your OS). * You can also use tools like `netstat` or `lsof` to identify processes using specific ports. *2. Free the port:* * Once you've identified the conflicting process, close it. This could be Fiddler itself, another application using the port, or even a leftover process from a previous run. * Alternatively, you can change the port used by Fiddler or JMeter. *3. Adjust port configuration:* *JMeter:* * In JMeter, go to "Test Plan" > "HTTP(S) Test Script Recorder". * Click "Modify Proxy". * Change the "Port" field to a different unused port number. * Save the changes and restart JMeter. *Fiddler:* * Open Fiddler Options (Tools > Options). * Go to the "Connections" tab. * Change the "Fiddler listens on port" value to a different unused port number. * Click "OK" to save the changes and restart Fiddler. *Additional Tips:* * Make sure you haven't accidentally launched multiple instances of JMeter or Fiddler. * Check if any firewall or security software is blocking the ports. * Use a different mobile proxy server if available. By following these steps, you should be able to resolve the port conflict and successfully start your JMeter performance test with Fiddler as your mobile proxy server. Remember to restart both applications after changing any port configurations.
Hi Raghav sir, thank you so much for this. Explaining very politely and precisely. But i have one question sir, my mobile WiFi doesn't work when it is selected to manual server and as a result i can't access app. I have looked all over the internet but to no avail. Would mean a world if you can help me.
@@RaghavPal I am having the same problem. Also using this method the recording only reads actions from mobile Browser (eg. Chrome or opera) and not a native app like what's app correct? Thank you
Kudos for the video content! Sorry for chiming in, I would appreciate your initial thoughts. Have you considered - Reyndrew Software saccular (do a search on google)? It is an awesome one of a kind guide for getting paid using this powerful internet marketing tool without the headache. Ive heard some awesome things about it and my mate after many years got cool success with it.
Nice video and explained in depth. I have a question: how can I test my application if it requires the internet to run. Through proxy changes the internet will disabled so, is there a way to test internet-required applications?
Shaheryar There are two ways to test internet-required applications with JMeter: 1. *Use a proxy server.* A proxy server can be used to intercept and modify HTTP requests and responses. You can configure JMeter to use a proxy server to access the internet. This will allow you to test your application without actually connecting to the internet. To use a proxy server with JMeter, follow these steps: 1. Start the proxy server. 2. Configure JMeter to use the proxy server. To do this, open the JMeter Test Plan and go to the *HTTP Request Defaults* element. In the *Proxy Server* section, enter the IP address and port number of the proxy server. 3. Run the JMeter test. JMeter will use the proxy server to access the internet. 2. *Use a mock server.* A mock server is a fake server that can be used to simulate the behavior of a real server. You can use a mock server to create a simulated version of the internet. This will allow you to test your application without actually connecting to the internet. To use a mock server with JMeter, follow these steps: 1. Start the mock server. 2. Configure JMeter to use the mock server. To do this, open the JMeter Test Plan and go to the *HTTP Request Defaults* element. In the *Target Host* section, enter the IP address and port number of the mock server. 3. Run the JMeter test. JMeter will use the mock server to simulate the behavior of the internet. Which method you choose will depend on your specific needs. If you need to test your application with real-world data, then you should use a proxy server. If you need to test your application with simulated data, then you should use a mock server. Here are some additional tips for testing internet-required applications with JMeter: * Make sure that you have a good understanding of how your application works over the internet. This will help you to create realistic test cases. * Use a variety of test cases to test different aspects of your application's functionality. * Monitor the performance of your application during the test. This will help you to identify any performance bottlenecks. * Analyze the results of the test carefully. This will help you to identify any problems with your application. I hope this helps
Hi Raghav, Thank you ,I am watching your JMeter videos and they are very useful. I appreciate your time and effort. JMeter - How to test Mobile Applications: Can you please explain how to connect iphone using proxy and port. I tried several times after watching this but I failed to connect my iphone with laptop to test native app. Also it would be more helpful if you could post videos of native app testing using jmeter
Hi Pravallika, its great to know that you are watching and learning from these videos. Please see this link might help you - www.testautomationguru.com/jmeter-record-ios-application-http-requests/ Will add more videos soon.
Hi Raghav.. thanks for this video and moreover i need to do a performance testing on Mobile application in jmeter and i enable all the proxy config done.. kindly advice how to do load and stress testing in mobile application and generate the report..
Vishal To do load and stress testing on a mobile application in JMeter, you can follow these steps: 1. Create a JMeter script that simulates the user interactions with the mobile application. This can be done by creating a sequence of HTTP requests that mimic the actions that a user would take when using the application. 2. Configure the JMeter script to run with a specified number of concurrent users. This is the number of users that will be simulated by JMeter at the same time. 3. Run the JMeter script. JMeter will start sending HTTP requests to the mobile application. 4. Monitor the results of the test. JMeter will generate a report that shows the performance of the mobile application under load. Here are some additional things to consider when doing load and stress testing on a mobile application in JMeter: *The number of concurrent users:* The number of concurrent users that you use will affect the load on the mobile application. You should start with a small number of users and gradually increase the number until you reach the desired level of load. *The duration of the test:* The duration of the test will also affect the load on the mobile application. You should run the test for a long enough time to get a good understanding of the performance of the application under load. *The type of load:* There are two main types of load: *static load* and *dynamic load*. Static load is when all of the users are making the same requests at the same time. Dynamic load is when the users are making different requests at different times. You should choose the type of load that is most appropriate for your application. *The report:* The JMeter report will show you a variety of information about the performance of the mobile application, such as the response time, the throughput, and the errors. You should use this information to identify any performance bottlenecks. I hope this helps!
Hi Raghav, Great video! I have one doubt. In my company, they want to perform performance testing of a native Android app, which I can do with JMeter and backend services/API collection. However, they also want to check the responsiveness and smoothness of UI elements. How can I achieve this with JMeter or any other app I might need to use?
Vaibhav To perform performance testing of a native Android app, including checking the responsiveness and smoothness of UI elements, you'll need to use a combination of tools JMeter can be used to test the backend services/API collection, but it's not suitable for testing the UI elements of a native Android app Step 1: Identify Performance Metrics Identify the key performance metrics that need to be tested, such as response time, throughput, resource utilization (CPU, memory, network), and error rates. Consider the specific requirements of your native Android app and its expected user base Step 2: Choose a Performance Testing Tool Choose a performance testing tool that can test the UI elements of a native Android app. Some popular options include: Appium: An open-source test automation framework that can be used to test native, mobile web, and hybrid applications. Robotium: A test automation framework that can be used to test native and hybrid Android applications Espresso: A testing framework provided by Android that can be used to test UI elements of native Android apps Step 3: Set Up the Test Environment Set up a test environment that closely mimics the production environment. This includes setting up the necessary infrastructure, such as devices, networks, and servers Step 4: Create Test Cases Create test cases that simulate various user scenarios, including scenarios that test the responsiveness and smoothness of UI elements. This includes testing the app's behavior under different network conditions, device types, and user loads Step 5: Execute Tests Execute the test cases using the chosen performance testing tool. This includes running the tests on multiple devices, networks, and user loads to simulate real-world scenarios Step 6: Monitor and Analyze Monitor and analyze the test results to identify performance bottlenecks and areas for improvement This includes analyzing the key performance metrics identified in Step 1. Step 7: Optimize and Refine Optimize and refine the app's performance based on the test results. This includes identifying and fixing performance issues, optimizing resource utilization, and improving the overall user experience Additionally, you can use JMeter to test the backend services/API collection, and then use the results to optimize the app's performance Remember to also consider the type of mobile application, such as mobile-web applications, hybrid applications, native applications, and cross-platform applications, when choosing a performance testing tool and creating test cases -
Hi Raghav, can you create a video on how to connect the same to laptop and see the display on screen? or do you have the video created already? if yes , please share it
Hi Swapnil, so you want to connect your mobile to laptop and view mobile screen on laptop. right.. You can use Vysor. You can get it as a chrome plugin
Amazing delivery of technical points and knowledgeable tips, One suggestion is voice is a little bit low, it should be louder to get a clear understanding. Thanks
Great video.Can you please let me know if we do the similar set up can we record any respective application (.apk) based transactions? Also..are there any changes if we use iOS device.
Hi Saket, may have to create a proxy recorder for Blazemeter, guide.blazemeter.com/hc/en-us/articles/360000271458-Creating-the-Proxy-Recorder-Creating-the-Proxy-Recorder
Hi Raghav, I have watched most of your videos and most recent Friday Q&A is great, all of them are really simple and full of info. Keep it up the good work. I have a requeset, can you pleaes make series on Behat Testing please, I am really interested in that and can not find any good video learning material . I thing it will be very useful for everyone.
Hi Jaymin, its great to know that these videos are helping you and others. I have taken down your request for Behat. I have many other videos to do, so it might take some time. But will surely do it. Keep watching and learning.
Raghav, your videos are very good and very helpful! I have a question about testing mobile apps. We watched your tutorial but we are trying to test our app on an emulator, Android Studio. When we try to test with JMeter it is not working. It will record if we open Google or one of the other web apps but if we try to record our mobile app it does not record. Do you have any pointers? Will JMeter actually work with an emulator?
Hi Virginia, if you are able to setup proxy in emulator like we did here, you should be able to use emulator, I am not sure if there is any other reason, that your app may not be recognized
Hi Raghav! A thank you! so much for you are a great personality helping so many selflessly. Keep-up your good work and noble nature. GOD bless you! As this is for mobile-web, can you also create a similar tutorial for mobile Native Apps. If already there, can you please guide me to that.
Hi Raghav! I have setup everything as explained in the video but not able to open any URL on the mobile browser. It says offline & no connectivity. I tried disabling the firewall as well but its not working for me. Any help is appreciated.
Hi Ashish, When you setup the proxy, then it will work only after you start recording from JMeter and not otherwise. Also different devices, may have different settings for proxy. So I will suggest 2 things here: 1. After doing proxy setup, Start from JMeter and then try to access the url 2. If above does not work, Check online for your specific device on how to enable proxy and connect to internet
Hi Raghav, As per the video you are recording the script from mobile browser , can you please let me know if possible how can I record script for android and iPhone application
Hello, Raghav - First, thanks for your wonderful sessions. How to test Proxy server (using iOS mobile) using JMeter. In desktop, I have tested by providing proxy server ip and port number in browser settings. When I ran Jmeter script, I could see all the logs are rotated in proxy server and I tested the performance. Now I want to configure proxy server on iOS device with some port. so that all the traffic is routed to proxy. How to test performance of the proxy server with iOS mobile? Please suggest, Thanks !!
Hi KK, I have not covered iOS mobile. Here are some links to help - blogs.quovantis.com/mobile-performance-testing-using-jmeter/ www.testautomationguru.com/jmeter-record-ios-application-http-requests/ www.stickyminds.com/question/how-configure-jmeter-ios-device-test-native-application
This was very much helpful but i am facing issue in internet connectivity after setting proxy in mobile. Could you please help me on this. I appreciate your help.
When we replay the scripts in Jmeter. It is getting invoked from local browser or the load will still be on the mobile ? How can we determine the mobile performance by running the scripts locally in Jmeter??
Hi Raghav, i watched the video it was very helpful! I was able to record the script, wanted to know while running the load test do we need to keep the Mobile device connected to the wifi or we run the test directly from Local machine ?
Hi Raghav, Really informative video. I like to understand if we have a Mobile application ,and we want to load test the Mobile application how to do it, can you please give some insight on it.
Hi Sansthita, if you are able to record your application using JMeter, you will just need to increase the user count and run the test, JMeter checks the server performance and not the client
@@RaghavPalThank you for you quick response. If in future you can add a brief course for Mobile application testing( by using emulators, simulators, and for same load, performance testing) and IOT hub how to connect to JMETER, it will be helpful.
Nice explaination Raghav & its really helpful. Keep it up. Quick help on my below queris: How can we analyze the performance of the mobile application with concurrent users?(Tool should be open source) Thanks.
Hi Raghav.. thanks for this wonderful video. I have one doubt when I tried to install certificate in Android its give me error("This file cant be used as certificate").
Hi, this is typically caused when the file you are trying to use as a certificate is not in the correct format or has been corrupted Make sure that you are using the correct file format. A certificate file should typically be in the .pem or .crt format If you have the certificate in a different format, such as .cer, you may need to convert it to the correct format Restart your device and try again. Sometimes, a simple restart can resolve issues with installing certificates
Hello, I am trying to test our mobile app in iPhone but is there any way that I can use the wired connection instead of a WiFi? WE have different networks for Mobile and Desktop for security purposes. thanks
Hi Marjorie, we basically need single network for both. You can use proxy. Pls check this - www.blazemeter.com/blog/load-testing-mobile-apps-made-easy/
Hi Sandra, JMeter checks server performance and not client side. That means irrespective of the client, It will monitor the network communication to the server and shows the result. So you can connect to a server from a web app or mobile native app or desktop, JMeter will just record the network communications
Hi Raghav pal, Hope You Doing Well!... Actually I having using JMeter for pc website, so it is working fine, But Now Present I m using mobile app testing with JMeter so please any other special settings for record script in JMeter by mobile apps... Like we used to set the website to test
Hi Raghav, can you please suggest any performance testing tool that can be used for client side performance testing in mobile apps if it is not possible with JMeter?
Hi Harshal If you're looking for a performance testing tool specifically designed for client-side performance testing in mobile apps, one popular option is: 1. **Gatling**: Gatling is an open-source load testing tool that supports performance testing for web, mobile, and streaming applications. It has a DSL (Domain-Specific Language) for creating test scenarios and provides detailed performance metrics and reports. Gatling also supports testing mobile apps by simulating virtual users interacting with the app. Additionally, while JMeter is primarily designed for server-side performance testing, it can also be used for client-side performance testing in mobile apps with the help of plugins or custom scripts. Some JMeter plugins that can assist with mobile app performance testing are: 2. **BlazeMeter plugin for JMeter**: BlazeMeter provides a plugin for JMeter that enhances its capabilities for mobile app performance testing. It offers features like capturing and replaying mobile app traffic, simulating various network conditions, and generating performance reports. 3. **JMeter Proxy Server**: JMeter has a built-in proxy server that can be used to record the interactions between a mobile app and the server. By configuring the mobile device to use the JMeter proxy, you can capture the network traffic and perform performance testing on the client-side. Both Gatling and JMeter (with plugins or proxy server) can be effective tools for client-side performance testing in mobile apps. The choice depends on your specific requirements, familiarity with the tool, and the level of detail and metrics you need for your performance testing.
@automatiostepbystep Hello sir, I am sumedh. I watched all your JMeter related videos on youtube. I learnt JMeter successfully. Your teaching techniques are awesome. Currently I am doing mobile testing. I set up the proxy and installed the certificate on my mobile device. I am getting responses on the JMeter but all are saying things like Unknown certificate or unable to handshake. I tried with ChatGPT also. But I can find a solution. Can you please help me?
Hi Sumedh I may also need to take help online on this. When you encounter errors like "Unknown certificate" or "unable to handshake" during mobile testing with a proxy and certificate set up, it typically indicates an issue with the certificate configuration. Here are some steps to troubleshoot and resolve the problem: 1. Verify Proxy Settings: Double-check that the proxy settings on your mobile device are correctly configured to point to the IP address and port number of your proxy server 2. Install the Certificate Correctly: Ensure that you have installed the proxy server's certificate correctly on your mobile device. Follow the specific instructions for your device and operating system to import and trust the certificate 3. Certificate Validity: Ensure that the certificate you are using is valid and not expired. If it has expired, generate a new certificate and install it on both the proxy server and your mobile device 4. Certificate Chain: Check if the certificate chain is properly set up. If the certificate is issued by a Certificate Authority (CA), ensure that the intermediate and root certificates are correctly installed on your mobile device 5. Certificate Trust: Verify that the certificate is trusted on your mobile device. Sometimes, you may need to explicitly trust the certificate to establish a secure connection 6. Proxy Configuration: Check if your proxy server is correctly configured to handle SSL/TLS traffic. Ensure that it is intercepting and decrypting the secure traffic properly 7. Network Configuration: Ensure that your mobile device is connected to the same network as the proxy server and that there are no firewall or network restrictions blocking the communication By following these steps, you should be able to resolve the issues related to unknown certificates or handshake failures during mobile testing with a proxy and certificate setup
Hi Raghav, Does it suits for Mobile native applications. Is this alone for Performance of the application (Native Mobile application ) or else possible to test for load too by adding Listener as we done for web application. Kindly , share the result analysis for Mobile application.
Hi Fouziya, this records the server interaction through a mobile application. So you actually are testing the server side and not client side. Once you have the samplers recorded and are working fine, You can increase the load and run the test as we do for web app testing.
This is really great. But I dont get the sense of usability, why do we need to use mobile phones if we can already run the same stuff on a computer. Do we also capture mobile app requests?
Hi Mohan, there are some web applications that can run on desktop as well as mobile and some are mobile specific apps, In both cases it may be required to test the performance of the app when used from a mobile device
hi raghava, its a good video. Thanks for sharing. I need some sugession regarding app client automation. Could you please suggest me if you have any idea Scenario: 1)Need to verify app loading time 2)verify app login time and 3)app crash rate. Kindly suggest me if you have idea. Regards, Rajesh T
Hi Rajesh, with JMeter you can check the client network communication performance. So it will be mostly server-side performance testing. For client side will need to do some search ua-cam.com/video/XMFrNla8bHI/v-deo.html
Hi raghav I just want to know if there is any method to audit the test execution on devices. As we are doing manual testing of applications on many different devices So I want to audit that every test case has been executed or not. Please reply as soon as possible. Thanks
Thanks for the video, in my test environment, my desktop and my mobile phone are not connected from the same wifi source. is it possible to record using a usb cable ?
Hi @raghav, I want to use jmeter for mobile application, but not able to do the recording, could you pelase help me here, i followed all the steps given by you.
Hello raghav, My company laptop has a firewall due to which none of the mobile app recording is captured in jmeter. Would you pls suggest how to proceed with this. I am using personal wifi but still recording is unsuccessful in my laptop.
Informative, it worked for http based mobile apps, but for https based mobile apps, give handshaking problem, and no recording, it does not proceed further? Can you share solution for https based mobile apps?
Hi Juanjo, You can do on native application also. But JMeter will only check network calls or in other words server performance and not client performance
Nice!! was very much helpful. I was wondering if you could show us, how to use particular user/users in the sampler from CSV file which consists many or lets say "n"' number of users(for instance, if you want to test the names which have more than 28 characters , for this load runner has parameters where you can customize or randomize the users you want to use from CSV).I was curious to know, if JMeter has such functionality. Thanks....
Hi Shankar, thanks for watching. In JMeter if you have any custom requirement and you do not have some in-build component you can always use Bean Shell Sampler and write your code here.
I've done with this and it works fine. Thanks :) Btw is there any possibilities that it can be done using USB Cable instead of Wi-Fi ? Just want to know.
I don't think so Pradeep. Can check some information here stackoverflow.com/questions/52287941/is-it-possible-record-traffic-from-mobile-device-without-wifi
hello, i have a question, hopefully you answer me. i follow all the steps in this video, did research, but still i can not record my mobile with jmeter. when i set up my phone keeps wifi connected but with out internet. again i havent miseed any of the step that you mentioned in this video.
It sounds like the proxy settings might be causing the issue with your network connection. Here are a few steps you can take to troubleshoot and resolve this: 1. Check Proxy Settings: Ensure that the proxy settings are correctly configured. Sometimes, incorrect proxy details can block network access. 2. Bypass Proxy for Local Addresses: If you're using a proxy, make sure to bypass it for local addresses. This can usually be configured in your proxy settings. 3. Check Firewall Settings: Ensure that your firewall isn't blocking the connection when the proxy is enabled. 4. Update Proxy Details: Verify that the proxy details (IP address, port, username, password) are correct and up to date. 5. Test with Another Proxy: If possible, try using a different proxy to see if the issue persists. 6. Check Network Configuration: Ensure that your network configuration is correct and that there are no conflicts with the proxy settings. If you are using company laptop, you might want to consult with your network administrator or IT support team for further assistance. They can help ensure that the proxy settings are correctly configured and that there are no underlying network issues. --
Hi Saurabh, i believe this is more about Network Throttling Try Chrome Dev Tools and also check this: www.browserstack.com/guide/how-to-perform-network-throttling-in-chrome
@@RaghavPal Thanks Raghav, will look into it. I am moving as performance tester. The only lagging thing is AppDynamics for memory leakage testing and Mobile application performance testing. Is there any site I can learn AppDynamics. Have seen few videos on it but configuring is not shown anywhere. Plz suggest
Awesome video, as always. A quick question, will this work with a mobile app? I have an application on mobile which uses REST api to communicate with the server. Following the steps from this tutorial, will it record API calls too?
@@RaghavPal Hi Raghav, Your videos are so helpful for me in sorting out many things. I tried the same steps as you mentioned but unfortunately, I am able to record the calls that I do from the device browser but not from the native app. Do there any other specific port that will get utilized from the native application in order to the calls...? Please confirm....!!!
Hi Raghav, I have to load test a mobile native app. I am using JMeter version 5, I have connected my office laptop and mobile device to same WIFI network and when i try to set the proxy configuration by giving my laptop ip and port as 8888 then save in mobile device. I am getting 'No internet connection' in mobile device. I am struck here
Hi, it depends on the mobile settings for the specific device you are using. There are a few steps you can try to resolve the issue: 1. Check that the proxy settings on your mobile device are correct. Make sure that the proxy host and port match the values you specified in JMeter. Check for extra spaces, spellings etc. 2. Restart your mobile device and JMeter to see if the issue is resolved. 3. Check that your mobile device is connected to the same network as the machine running JMeter. If the device is connected to a different network, it may not be able to access the internet through the proxy. 4. Make sure that the network connection on your mobile device is stable. If you are using a wireless connection, try switching to a wired connection or vice versa. 5. If you are using a VPN on your mobile device, try disabling it to see if it is causing the issue. 6. If none of these steps help, you may need to check the JMeter logs to see if there are any errors or warning messages that can help you troubleshoot the issue. 7. If you are still unable to resolve the issue, you may need to consult with your network administrator or IT support for further assistance Pls try and let me know if any of these work for you, it will help others
Hi RaghavPal, I followed the same steps from the video. But when I change my proxy settings in mobile and start the recording, it is showing "No data connection" in mobile. I have also installed Jmeter Certificate and enabled developer options on my phone but there is no sign of any samplers in Jmeter and the internet is not working from mobile. At first tried in company laptop it did not work, also tried with my personal laptop it did not work. Please help!!
Hi Ullas There are a few things that could be causing the "No data connection" error in your mobile when you try to record using JMeter. * The proxy settings on your mobile may not be configured correctly. Make sure that the proxy IP address and port are correct, and that the proxy is enabled. * The JMeter certificate may not be installed correctly on your mobile. Follow the instructions in the JMeter documentation to install the certificate. * The developer options on your mobile may not be enabled. Make sure that the developer options are enabled, and that USB debugging is enabled. * The mobile and laptop may not be on the same network. Make sure that the mobile and laptop are connected to the same Wi-Fi network. If you have checked all of these things and you are still getting the "No data connection" error, then you may need to contact your mobile carrier or JMeter support for help. Here are some additional things you can try: * Restart your mobile and laptop. This may sometimes fix the issue. * Try a different proxy server. If you are using a public proxy server, try using a different one. * Try a different mobile device. If you have another mobile device, try using that to record with JMeter. I hope this helps
zabardast short and crisp explanation. In case I want to check the load for n number of numbers then how can I do that via Jmeter. kindly help me with the steps or with the video link if you have any
@@RaghavPal Sure, let me elaborate, I want to do load test of application in case 1000, 10000 or any n number of users hit the mobile buttons at the same. As of now we have tested the mobile app for just one user via steps mentioned in above video.
Okay, in JMeter when you create threads, they are treated as multiple users, Now in case you have options to add a user id or name in the request, you can change with every thread by using some functions like randomNum, randomString or take values from a csv file
Hi, you have recorded script for a website from android device.Can i record scripts from any app(.apk ) in android mobile using the same steps explained in this video. Thankyou.
Hi Raghav da, question. These steps are working absolutely fine for Mobile browser applications. But for Native Apps. the JMeter is not recording any details. Are there any specific configurations to be done for recording for Native Apps. Kindly advice
Hi Raghav, I have a problem, I want to use multiple users to run the test plan. In my application after user login, the system will gen ID and token, I see that each request has Header Manager to save ID and token. Can I use the random function to random ID and token in Header Manager to run my test plan? Thanks so much.
Darshana When using JMeter to test a React Native app, there are a few considerations to keep in mind: 1. JMeter Limitations: - JMeter is not a browser; it operates at the protocol level and doesn't execute JavaScript or render HTML pages like a browser does. - It records requests based on network traffic, but it won't provide metrics like page rendering time or JavaScript execution time. - If your recorded requests match those seen in the "network" tab of your browser developer tools, you can still use JMeter for performance testing. 2. React URLs vs. API URLs: - JMeter records requests made by your app, including API URLs. If you're not seeing React URLs, ensure that you're interacting with the app in a way that triggers those requests - React URLs may not be directly visible in the recorded requests, but as long as the essential interactions are captured, JMeter can simulate load effectively 3. Frontend Metrics: - If you need frontend metrics (e.g., page load time, JavaScript execution), consider using browser automation tools like Selenium (integrated with JMeter via WebDriver Sampler) or Playwright - Alternatively, use frontend performance testing solutions like Lighthouse 4. Certificate Trust (for Mobile Apps): - Ensure that your React Native app trusts JMeter's certificate. If not, you might encounter issues - On Android versions after 7.0 (Nougat), you may need to add JMeter's certificate directly to the `/system/etc/security/cacerts/` file - Check your application's network security configuration and amend it if necessary 5. React App Troubleshooting: - If you encounter issues specific to React apps, consider checking the React app itself - Avoid dependencies that use modern syntax incompatible with JMeter or upgrade to a compatible version of `react-scripts` Remember to adapt these steps to your specific scenario -
Hi I want to test login and logout process for mobile application with multiple users but I am facing an issue as login consists of two steps.. First to enter mobile number and then enter OTP and OTP is getting changed for every user.
Having OTP step for every user will be tricky. There are 2 ways you can deal with it. 1. Have your dev team skip the OTP validation in Test env or have a fixed OTP. 2. Other workaround can be to send OTP to email and then have a mail sampler to fetch it. This will again will need some coding and will not be straight forward If you can go with 1 that will be great.
1.Do I need to update the certificate in my computer every time when I press "Start" from test script recorder? 1 thing i notice that certifacte creation date is not updating when i press "Start" from test script records its showing old date when i first created that.Plz help me out.
Hi Raghav, I got mobile application for performance. In the mobile application I have to teat call functionalities, like audio call and video calls, users within how many seconds should be able to join, I don't have permission to to record using proxy to jmeter, so in this case how can I record calls for performance testing, can you please help me.
Challa Since you can't use a proxy to record traffic, we need to find an alternative approach Use JMeter's Mobile Recorder: Although you can't use a proxy, JMeter has a built-in Mobile Recorder that can capture mobile app traffic. However, this requires the mobile app to be instrumented with the JMeter agent. b. Use a network sniffer: Tools like Wireshark or Tcpdump can capture network traffic, including the calls made by the mobile app. This would require some technical expertise to set up and analyze the captured traffic. c. Use a mobile app testing framework: Some mobile app testing frameworks, like Appium or Robotium, provide features to simulate user interactions, including making calls. These frameworks might allow you to script the call functionality and measure the time it takes for users to join. d. Collaborate with the development team: If you have a good relationship with the development team, you could ask them to provide you with a test environment or a modified version of the app that allows you to record traffic or measure call join times.
hello.i have seen all your videos regarding load test with jmeter.I have one request. please make a set of load rest tutorial in which you test one whole website step by step so that new ones like me understand that how actually we can test load on a whole website. thank you
Hi Hina, thanks for watching. Although i have covered most of the concepts in these sessions. And you can apply this knowledge in your project, i will try creating the session as requested by you if i get some time.
Hi Syam, irrespective of the client use, JMeter will only capture network requests, that is req and response to server. So this is for server side performance testing and not client side.
Hi, I saw in your video when u tap on home button or archives button, In transaction controller Archives name is displayed automatically. I tried same in my jmeter while recording. Its not capturing names when I tap on home page, or different button. Its difficult to understand for which button recording is happening. Any idea? Also I didn't find any option to install certificate in wifi advanced for Android SAMSUNG QOS device. Need ur help :)
Hi Raghav! A big thanks to you! Your video was a life saver!! I've been struggling while performing load testing for my mobile applications, but now it has become quite simple! Thanks again🙏🏻👍🏻
Most welcome Raahul
@@RaghavPal Hi Raghav..iam confused about something.this video is about web application in mobile or mobileapp in phone? can we do performance testing of mobile app in jmeter?
Raghav you are the number 1 bro keep doing and keep helping thank you
Thanks, I will try my best
Thank you very much Raghav for providing this tutorial related to mobile testing
Most welcome Sitesh
Hi, Thanks for this insightful video, However, we are looking for mobile native application performance testing but not mobile web performance. is it feasible to record and test performance and simulate load for native Android and iOS mobile applications with Jmeter?
Inderjeet
Yes, it is feasible to record and test performance and simulate load for native Android and iOS mobile applications with JMeter. However, there are some limitations to consider.
* JMeter is a Java-based tool, so you will need to have Java installed on your machine.
* JMeter can only record and test HTTP traffic, so you will need to configure your mobile device to proxy all HTTP traffic through JMeter.
* JMeter is not a native mobile app testing tool, so it may not be able to capture all of the performance metrics that you are interested in.
Despite these limitations, JMeter can be a useful tool for testing the performance of native mobile applications. Here are some steps on how to use JMeter to test native mobile applications:
1. Install JMeter on your machine.
2. Configure your mobile device to proxy all HTTP traffic through JMeter.
3. Open JMeter and create a new test plan.
4. Add the "HTTP(s) Test Script Recorder" element to the test plan.
5. Start the HTTP(s) Test Script Recorder and open the native mobile application on your device.
6. Use the native mobile application as you would normally.
7. Stop the HTTP(s) Test Script Recorder when you are finished using the native mobile application.
8. Save the test script.
9. Run the test script to test the performance of the native mobile application.
You can also use JMeter to simulate load for native mobile applications. To do this, you will need to create a virtual user (VU) that represents a single user. You can then configure the VUs to perform specific actions, such as opening the native mobile application, navigating to different screens, and performing actions on those screens.
JMeter is a powerful tool that can be used to test the performance of native mobile applications. However, it is important to understand the limitations of the tool before using it.
Hi Raghav, thanks for the detailed explanation. Have you used Jmeter for testing OBD devices? Do we have to install any other plugins for testing
Sreelaxmi
JMeter can be a valuable tool for testing OBD (On-Board Diagnostics) devices, especially when you want to simulate load and performance scenarios.
Here's how you can use JMeter for OBD device testing:
1. Load Testing with JMeter:
- Load testing helps determine how well your OBD system handles a large number of requests or data points.
- Create a JMeter test plan that simulates various OBD requests (such as diagnostic queries, sensor readings, or firmware updates).
- Configure Thread Groups to represent the number of concurrent users or devices.
- Add HTTP Request samplers to simulate OBD requests to your device's endpoints.
- Monitor response times, throughput, and error rates to assess performance under load.
2. Stress Testing with JMeter:
- Stress testing evaluates how your OBD system behaves when pushed beyond its limits.
- Define scenarios where the OBD device receives an unusually high volume of requests or data.
- Gradually increase the load until you find the breaking point (where the system starts failing or responding slowly).
- Use JMeter assertions to validate responses and detect errors.
3. Custom Plugins and Extensions:
- JMeter has a rich ecosystem of plugins that can enhance its capabilities.
- For OBD-specific testing, consider using custom plugins or extensions:
- Custom samplers: Create custom samplers to send OBD-specific commands (e.g., PID queries) to your device.
- Listeners: Use listeners to capture and analyze OBD responses.
- Scripting: If needed, use JSR223 elements (e.g., Groovy scripts) to manipulate OBD data or simulate specific scenarios.
4. OBD Protocols and Communication:
- Understand the OBD protocols your device supports (e.g., CAN, ISO 9141, J1850, UDS).
- Configure JMeter to communicate with your OBD device over the relevant protocol (e.g., via HTTP, TCP/IP, or Bluetooth).
5. Testing Real Devices:
- Connect a real OBD device to your test environment (e.g., a car with an OBD-II port).
- Use JMeter to send actual OBD requests and validate responses.
- Ensure that your test environment is safe and complies with any legal or safety requirements.
6. Monitoring and Reporting:
- Use JMeter's built-in graphical reports to analyze performance metrics.
- Monitor OBD-specific parameters (e.g., RPM, speed, coolant temperature) during testing.
Remember that OBD testing involves real-world scenarios, so ensure that your test environment closely resembles the actual usage conditions. Additionally, consult OBD device documentation and specifications to tailor your tests accordingly.
..
@@RaghavPal thank you so much Raghav for the immediate response and a detailed explanation
Hi Raghav, You are is very much helpful. Could please make a video on how to use jmeter and mobile devices connected with different network and do performance test on mobile applications.
Sathvuka
I will plan. For now, this can help:
## Using JMeter and Mobile Devices for Performance Testing Mobile Applications
Mobile application performance testing is crucial to ensure a smooth and responsive user experience. JMeter is a popular open-source tool that can be used to test the performance of mobile applications across various network conditions. This includes testing on different devices connected to different networks, such as Wi-Fi, 3G, 4G, and LTE.
Here's a guide on how to use JMeter and mobile devices for performance testing mobile applications:
*1. Prerequisites:*
*JMeter:* Download and install the latest version of JMeter.
*Mobile devices:* You will need several mobile devices with different operating systems (Android and iOS) and network access.
*Mobile Proxy Server:* You can choose from various mobile proxy servers like Charles Proxy, Fiddler, or HTTP Toolkit.
*Application under test (AUT):* The mobile application you want to test.
*2. Set Up Mobile Proxy Server:*
1. Install the mobile proxy server on your computer.
2. Configure the proxy server settings on your mobile devices.
3. Connect your mobile devices to the desired networks (Wi-Fi, 3G, 4G, LTE).
*3. Record Test Script:*
1. Open JMeter.
2. Add a Thread Group.
3. Add an HTTP(S) Test Script Recorder.
4. Configure the recorder settings:
*Port:* Set the port number to match the mobile proxy server port.
*Target Controller:* Select the Thread Group.
*Target Host:* Enter the hostname or IP address of the mobile device.
*Target Port:* Specify the port number used by the mobile application.
5. Start the recorder and open the mobile application on your device.
6. Perform actions within the application as if you were a real user.
7. Stop the recorder when you have recorded enough traffic.
*4. Create and Configure Test Plan:*
1. Add a Test Plan to your JMeter project.
2. Add the recorded HTTP(S) Test Script Recorder as a child of the Test Plan.
3. Add any additional components you need for your test, such as:
* Timers: To control the delay between requests.
* Assertions: To verify the response values.
* Listeners: To view and analyze the test results.
4. Configure the Thread Group:
* Number of threads: Set the number of concurrent users to simulate.
* Ramp-up time: Specify the time it takes to reach the peak number of threads.
* Loop count: Set the number of times to repeat the test script.
*5. Run the Test:*
1. Start your mobile proxy server and connect your mobile device to the desired network.
2. Start the JMeter test.
3. Monitor the test results in JMeter.
4. After the test is complete, analyze the results to identify any performance bottlenecks.
*Tips for Performance Testing Mobile Applications:*
*Use real devices:* Emulators and simulators may not accurately represent the behavior of real devices.
*Test on different networks:* This will help you understand how your application performs under different network conditions.
*Vary the number of users:* This will help you identify any scalability issues.
*Monitor resource usage:* This will help you identify any bottlenecks on the mobile device or server.
*Use a load balancer:* This will help you distribute traffic across multiple servers and improve performance.
*Automate your tests:* This will save you time and ensure consistency.
By following these steps and using the available resources, you can effectively use JMeter and mobile devices to test the performance of your mobile applications across different network conditions. This will help you ensure that your applications are providing a smooth and responsive user experience for all your users.
@@RaghavPal thank you for your valuable time. But when I try to start the jmeter test , it is showing like port is already in use. Actually i have set the port of mobile proxy server ,i.e., fiddler.
It seems you're facing a port conflict between JMeter and Fiddler while trying to start your performance test. This can be frustrating, but there are ways to resolve it:
*1. Identify the conflicting port:*
* Check the exact port number JMeter is trying to use by looking at the error message or JMeter configuration.
* Look for any processes using the same port in Task Manager/Activity Monitor (depending on your OS).
* You can also use tools like `netstat` or `lsof` to identify processes using specific ports.
*2. Free the port:*
* Once you've identified the conflicting process, close it. This could be Fiddler itself, another application using the port, or even a leftover process from a previous run.
* Alternatively, you can change the port used by Fiddler or JMeter.
*3. Adjust port configuration:*
*JMeter:*
* In JMeter, go to "Test Plan" > "HTTP(S) Test Script Recorder".
* Click "Modify Proxy".
* Change the "Port" field to a different unused port number.
* Save the changes and restart JMeter.
*Fiddler:*
* Open Fiddler Options (Tools > Options).
* Go to the "Connections" tab.
* Change the "Fiddler listens on port" value to a different unused port number.
* Click "OK" to save the changes and restart Fiddler.
*Additional Tips:*
* Make sure you haven't accidentally launched multiple instances of JMeter or Fiddler.
* Check if any firewall or security software is blocking the ports.
* Use a different mobile proxy server if available.
By following these steps, you should be able to resolve the port conflict and successfully start your JMeter performance test with Fiddler as your mobile proxy server. Remember to restart both applications after changing any port configurations.
Hi Raghav!
How to do performance testing for apps installed in mobile using Jmeter?
Is there any video by you?
Hi Amar,
As of now this is the only video I have for Mobile App testing using JMeter, You can check for more options online
Hi Raghav sir, thank you so much for this. Explaining very politely and precisely. But i have one question sir, my mobile WiFi doesn't work when it is selected to manual server and as a result i can't access app.
I have looked all over the internet but to no avail. Would mean a world if you can help me.
Hi Mayank, it may be due to your specific device settings, Not sure, will need to check,
@@RaghavPal I am having the same problem. Also using this method the recording only reads actions from mobile Browser (eg. Chrome or opera) and not a native app like what's app correct? Thank you
After setting the Proxy details. Just Turn off and On your wifi. Then check.
You're great! Simple, fast and easy tutorial!!! Wonderful!!
Thanks for watching.
Kudos for the video content! Sorry for chiming in, I would appreciate your initial thoughts. Have you considered - Reyndrew Software saccular (do a search on google)? It is an awesome one of a kind guide for getting paid using this powerful internet marketing tool without the headache. Ive heard some awesome things about it and my mate after many years got cool success with it.
Nice video and explained in depth. I have a question: how can I test my application if it requires the internet to run. Through proxy changes the internet will disabled so, is there a way to test internet-required applications?
Shaheryar
There are two ways to test internet-required applications with JMeter:
1. *Use a proxy server.* A proxy server can be used to intercept and modify HTTP requests and responses. You can configure JMeter to use a proxy server to access the internet. This will allow you to test your application without actually connecting to the internet.
To use a proxy server with JMeter, follow these steps:
1. Start the proxy server.
2. Configure JMeter to use the proxy server. To do this, open the JMeter Test Plan and go to the *HTTP Request Defaults* element. In the *Proxy Server* section, enter the IP address and port number of the proxy server.
3. Run the JMeter test. JMeter will use the proxy server to access the internet.
2. *Use a mock server.* A mock server is a fake server that can be used to simulate the behavior of a real server. You can use a mock server to create a simulated version of the internet. This will allow you to test your application without actually connecting to the internet.
To use a mock server with JMeter, follow these steps:
1. Start the mock server.
2. Configure JMeter to use the mock server. To do this, open the JMeter Test Plan and go to the *HTTP Request Defaults* element. In the *Target Host* section, enter the IP address and port number of the mock server.
3. Run the JMeter test. JMeter will use the mock server to simulate the behavior of the internet.
Which method you choose will depend on your specific needs. If you need to test your application with real-world data, then you should use a proxy server. If you need to test your application with simulated data, then you should use a mock server.
Here are some additional tips for testing internet-required applications with JMeter:
* Make sure that you have a good understanding of how your application works over the internet. This will help you to create realistic test cases.
* Use a variety of test cases to test different aspects of your application's functionality.
* Monitor the performance of your application during the test. This will help you to identify any performance bottlenecks.
* Analyze the results of the test carefully. This will help you to identify any problems with your application.
I hope this helps
Hi Raghav, Thank you ,I am watching your JMeter videos and they are very useful. I appreciate your time and effort.
JMeter - How to test Mobile Applications: Can you please explain how to connect iphone using proxy and port. I tried several times after watching this but I failed to connect my iphone with laptop to test native app.
Also it would be more helpful if you could post videos of native app testing using jmeter
Hi Pravallika, its great to know that you are watching and learning from these videos. Please see this link might help you - www.testautomationguru.com/jmeter-record-ios-application-http-requests/
Will add more videos soon.
Hello Raghav, can you please also explain how to record native iOS app on JMeter. The way you described only explains
for web applications .
It captures the network communication, so you can use a native app, but the samplers will be recorded for network requests
Hi Raghav.. thanks for this video and moreover i need to do a performance testing on Mobile application in jmeter and i enable all the proxy config done.. kindly advice how to do load and stress testing in mobile application and generate the report..
Vishal
To do load and stress testing on a mobile application in JMeter, you can follow these steps:
1. Create a JMeter script that simulates the user interactions with the mobile application. This can be done by creating a sequence of HTTP requests that mimic the actions that a user would take when using the application.
2. Configure the JMeter script to run with a specified number of concurrent users. This is the number of users that will be simulated by JMeter at the same time.
3. Run the JMeter script. JMeter will start sending HTTP requests to the mobile application.
4. Monitor the results of the test. JMeter will generate a report that shows the performance of the mobile application under load.
Here are some additional things to consider when doing load and stress testing on a mobile application in JMeter:
*The number of concurrent users:* The number of concurrent users that you use will affect the load on the mobile application. You should start with a small number of users and gradually increase the number until you reach the desired level of load.
*The duration of the test:* The duration of the test will also affect the load on the mobile application. You should run the test for a long enough time to get a good understanding of the performance of the application under load.
*The type of load:* There are two main types of load: *static load* and *dynamic load*. Static load is when all of the users are making the same requests at the same time. Dynamic load is when the users are making different requests at different times. You should choose the type of load that is most appropriate for your application.
*The report:* The JMeter report will show you a variety of information about the performance of the mobile application, such as the response time, the throughput, and the errors. You should use this information to identify any performance bottlenecks.
I hope this helps!
@@RaghavPal Thank u so much Raghav.. ur the saviour😍
Hi Raghav,
Great video! I have one doubt. In my company, they want to perform performance testing of a native Android app, which I can do with JMeter and backend services/API collection. However, they also want to check the responsiveness and smoothness of UI elements. How can I achieve this with JMeter or any other app I might need to use?
Vaibhav
To perform performance testing of a native Android app, including checking the responsiveness and smoothness of UI elements, you'll need to use a combination of tools
JMeter can be used to test the backend services/API collection, but it's not suitable for testing the UI elements of a native Android app
Step 1: Identify Performance Metrics Identify the key performance metrics that need to be tested, such as response time, throughput, resource utilization (CPU, memory, network), and error rates. Consider the specific requirements of your native Android app and its expected user base
Step 2: Choose a Performance Testing Tool Choose a performance testing tool that can test the UI elements of a native Android app. Some popular options include:
Appium: An open-source test automation framework that can be used to test native, mobile web, and hybrid applications.
Robotium: A test automation framework that can be used to test native and hybrid Android applications
Espresso: A testing framework provided by Android that can be used to test UI elements of native Android apps
Step 3: Set Up the Test Environment Set up a test environment that closely mimics the production environment. This includes setting up the necessary infrastructure, such as devices, networks, and servers
Step 4: Create Test Cases Create test cases that simulate various user scenarios, including scenarios that test the responsiveness and smoothness of UI elements. This includes testing the app's behavior under different network conditions, device types, and user loads
Step 5: Execute Tests Execute the test cases using the chosen performance testing tool. This includes running the tests on multiple devices, networks, and user loads to simulate real-world scenarios
Step 6: Monitor and Analyze Monitor and analyze the test results to identify performance bottlenecks and areas for improvement
This includes analyzing the key performance metrics identified in
Step 1.
Step 7: Optimize and Refine Optimize and refine the app's performance based on the test results. This includes identifying and fixing performance issues, optimizing resource utilization, and improving the overall user experience
Additionally, you can use JMeter to test the backend services/API collection, and then use the results to optimize the app's performance
Remember to also consider the type of mobile application, such as mobile-web applications, hybrid applications, native applications, and cross-platform applications, when choosing a performance testing tool and creating test cases
-
Hi Raghav, can you create a video on how to connect the same to laptop and see the display on screen? or do you have the video created already? if yes , please share it
Hi Swapnil, so you want to connect your mobile to laptop and view mobile screen on laptop. right.. You can use Vysor. You can get it as a chrome plugin
Hi Raghav Pal which is really gonna be used to the beginners Thank you
It is very useful. Thanks for your sharing.
Most welcome
Amazing delivery of technical points and knowledgeable tips, One suggestion is voice is a little bit low, it should be louder to get a clear understanding. Thanks
Sorry for that Ravi and thanks for the feedback, Will improve in future videos. Can check all here automationstepbystep.com/
Great video.Can you please let me know if we do the similar set up can we record any respective application (.apk) based transactions? Also..are there any changes if we use iOS device.
Hi Swarnendu, pls note JMeter can record network traffic and can check server performance, it does not check client performance
@@RaghavPal thanks
Can we use a blazmeter for recording a script on mobile application? If yes can you please tell us how?
Hi Saket, may have to create a proxy recorder for Blazemeter, guide.blazemeter.com/hc/en-us/articles/360000271458-Creating-the-Proxy-Recorder-Creating-the-Proxy-Recorder
@@RaghavPal Thank you So much.
Thank you so much for this Step-By-Step Tutorial
Most welcome Divya
Hi Raghav, I have watched most of your videos and most recent Friday Q&A is great, all of them are really simple and full of info. Keep it up the good work. I have a requeset, can you pleaes make series on Behat Testing please, I am really interested in that and can not find any good video learning material . I thing it will be very useful for everyone.
Hi Jaymin, its great to know that these videos are helping you and others. I have taken down your request for Behat. I have many other videos to do, so it might take some time. But will surely do it. Keep watching and learning.
Automation Step-by-Step - Raghav Pal Thank you very much
Wah simple and clear and crisp
Thank you so much 🙂Ramesh
Raghav, your videos are very good and very helpful! I have a question about testing mobile apps. We watched your tutorial but we are trying to test our app on an emulator, Android Studio. When we try to test with JMeter it is not working. It will record if we open Google or one of the other web apps but if we try to record our mobile app it does not record. Do you have any pointers? Will JMeter actually work with an emulator?
Hi Virginia, if you are able to setup proxy in emulator like we did here, you should be able to use emulator, I am not sure if there is any other reason, that your app may not be recognized
will it record all the actions that is being performed over that wifi network?Like using browser or any other application that requires wifi.
Have not tired that. You can test it.
Hi Raghav! A thank you! so much for you are a great personality helping so many selflessly. Keep-up your good work and noble nature. GOD bless you!
As this is for mobile-web, can you also create a similar tutorial for mobile Native Apps. If already there, can you please guide me to that.
Most welcome. I will plan Isaac
Hi, Nice video. Can we record mobile app actions through jmeter? I need to do performance testing using jmeter. Is that right option? Please guide me.
JMeter will record the network calls and performance, and not client perforamance
Hi Raghav! I have setup everything as explained in the video but not able to open any URL on the mobile browser. It says offline & no connectivity. I tried disabling the firewall as well but its not working for me. Any help is appreciated.
Hi Ashish, When you setup the proxy, then it will work only after you start recording from JMeter and not otherwise.
Also different devices, may have different settings for proxy.
So I will suggest 2 things here:
1. After doing proxy setup, Start from JMeter and then try to access the url
2. If above does not work, Check online for your specific device on how to enable proxy and connect to internet
Hi Raghav, As per the video you are recording the script from mobile browser , can you please let me know if possible how can I record script for android and iPhone application
Hi, the steps remain same, but please note JMeter will only record network communications
Hello, Raghav - First, thanks for your wonderful sessions.
How to test Proxy server (using iOS mobile) using JMeter.
In desktop, I have tested by providing proxy server ip and port number in browser settings. When I ran Jmeter script, I could see all the logs are rotated in proxy server and I tested the performance.
Now I want to configure proxy server on iOS device with some port. so that all the traffic is routed to proxy. How to test performance of the proxy server with iOS mobile? Please suggest, Thanks !!
Hi KK, I have not covered iOS mobile. Here are some links to help -
blogs.quovantis.com/mobile-performance-testing-using-jmeter/
www.testautomationguru.com/jmeter-record-ios-application-http-requests/
www.stickyminds.com/question/how-configure-jmeter-ios-device-test-native-application
Hello Raghav
Which tool you have used to stimulate mobile device?
I believe you are asking how I showed mobile on screen? Its through Vysor
This was very much helpful but i am facing issue in internet connectivity after setting proxy in mobile. Could you please help me on this. I appreciate your help.
Hi Sathish, this can be due to specific device
When we replay the scripts in Jmeter. It is getting invoked from local browser or the load will still be on the mobile ? How can we determine the mobile performance by running the scripts locally in Jmeter??
Hi Surenthar, JMeter sends the request from multiple threads (virtual users), and it checks the server performance and not client performance
Hi Raghav,
Can you please tell me which android simulator you have used in this video?
Thanks.
Hi Ishit, i have connected a physical device (my android phone) and it is displayed on the screen with the help of chrome plugin Vysor
Hi Raghav, i watched the video it was very helpful!
I was able to record the script, wanted to know while running the load test do we need to keep the Mobile device connected to the wifi or we run the test directly from Local machine ?
it should have network to access the app
Hi Raghav, Really informative video. I like to understand if we have a Mobile application ,and we want to load test the Mobile application how to do it, can you please give some insight on it.
Hi Sansthita, if you are able to record your application using JMeter, you will just need to increase the user count and run the test, JMeter checks the server performance and not the client
@@RaghavPalThank you for you quick response. If in future you can add a brief course for Mobile application testing( by using emulators, simulators, and for same load, performance testing) and IOT hub how to connect to JMETER, it will be helpful.
Sure I will
Nice explaination Raghav & its really helpful. Keep it up.
Quick help on my below queris:
How can we analyze the performance of the mobile application with concurrent users?(Tool should be open source)
Thanks.
Hi Vidula, JMeter does that. you can try it
Hi Raghav.. thanks for this wonderful video. I have one doubt when I tried to install certificate in Android its give me error("This file cant be used as certificate").
Hi, this is typically caused when the file you are trying to use as a certificate is not in the correct format or has been corrupted
Make sure that you are using the correct file format. A certificate file should typically be in the .pem or .crt format
If you have the certificate in a different format, such as .cer, you may need to convert it to the correct format
Restart your device and try again. Sometimes, a simple restart can resolve issues with installing certificates
hi Raghav! , need to do performance testing in mobile flutter application can you give me any suggestions how to do Thanks
Hi Chaitanya, not much info on flutter mobile app, I will suggest to check online and take feedback from people who have used this
Hello, I am trying to test our mobile app in iPhone but is there any way that I can use the wired connection instead of a WiFi? WE have different networks for Mobile and Desktop for security purposes. thanks
Hi Marjorie, we basically need single network for both. You can use proxy. Pls check this - www.blazemeter.com/blog/load-testing-mobile-apps-made-easy/
Just an clarification,whether in jmeter only webapps can be performed?whether native apps and hybrid apps can be done in jmeter ?
Hi Sandra, JMeter checks server performance and not client side. That means irrespective of the client, It will monitor the network communication to the server and shows the result. So you can connect to a server from a web app or mobile native app or desktop, JMeter will just record the network communications
Hi. Is Jmeter supported to record a native mobile app? i.e. an application instead of a webpage.
JMeter will only record network calls
Hi Raghav pal, Hope You Doing Well!... Actually I having using JMeter for pc website, so it is working fine, But Now Present I m using mobile app testing with JMeter so please any other special settings for record script in JMeter by mobile apps...
Like we used to set the website to test
Hi, have explained the settings in this video. In case of something specific, you might have to check online
Great teaching. Very simple and very effective
Glad it was helpful Kamesh
Very nice and helpful bro
Glad to know Rupesh
Hi Raghav,
Can we do performance test on native android app using same steps given in video.
Hi Sangram, you can do. JMeter will cover the network communications (calls to server) irrespective of the client used
It's better understanding thankyou
most welcome Sagar
excellent Video , very crisp and helpful
Glad it was helpful Garvit
Hi Raghav, can you please suggest any performance testing tool that can be used for client side performance testing in mobile apps if it is not possible with JMeter?
Hi Harshal
If you're looking for a performance testing tool specifically designed for client-side performance testing in mobile apps, one popular option is:
1. **Gatling**: Gatling is an open-source load testing tool that supports performance testing for web, mobile, and streaming applications. It has a DSL (Domain-Specific Language) for creating test scenarios and provides detailed performance metrics and reports. Gatling also supports testing mobile apps by simulating virtual users interacting with the app.
Additionally, while JMeter is primarily designed for server-side performance testing, it can also be used for client-side performance testing in mobile apps with the help of plugins or custom scripts. Some JMeter plugins that can assist with mobile app performance testing are:
2. **BlazeMeter plugin for JMeter**: BlazeMeter provides a plugin for JMeter that enhances its capabilities for mobile app performance testing. It offers features like capturing and replaying mobile app traffic, simulating various network conditions, and generating performance reports.
3. **JMeter Proxy Server**: JMeter has a built-in proxy server that can be used to record the interactions between a mobile app and the server. By configuring the mobile device to use the JMeter proxy, you can capture the network traffic and perform performance testing on the client-side.
Both Gatling and JMeter (with plugins or proxy server) can be effective tools for client-side performance testing in mobile apps. The choice depends on your specific requirements, familiarity with the tool, and the level of detail and metrics you need for your performance testing.
@automatiostepbystep Hello sir,
I am sumedh. I watched all your JMeter related videos on youtube. I learnt JMeter successfully. Your teaching techniques are awesome.
Currently I am doing mobile testing. I set up the proxy and installed the certificate on my mobile device. I am getting responses on the JMeter but all are saying things like Unknown certificate or unable to handshake.
I tried with ChatGPT also. But I can find a solution.
Can you please help me?
Hi Sumedh
I may also need to take help online on this.
When you encounter errors like "Unknown certificate" or "unable to handshake" during mobile testing with a proxy and certificate set up, it typically indicates an issue with the certificate configuration. Here are some steps to troubleshoot and resolve the problem:
1. Verify Proxy Settings: Double-check that the proxy settings on your mobile device are correctly configured to point to the IP address and port number of your proxy server
2. Install the Certificate Correctly: Ensure that you have installed the proxy server's certificate correctly on your mobile device. Follow the specific instructions for your device and operating system to import and trust the certificate
3. Certificate Validity: Ensure that the certificate you are using is valid and not expired. If it has expired, generate a new certificate and install it on both the proxy server and your mobile device
4. Certificate Chain: Check if the certificate chain is properly set up. If the certificate is issued by a Certificate Authority (CA), ensure that the intermediate and root certificates are correctly installed on your mobile device
5. Certificate Trust: Verify that the certificate is trusted on your mobile device. Sometimes, you may need to explicitly trust the certificate to establish a secure connection
6. Proxy Configuration: Check if your proxy server is correctly configured to handle SSL/TLS traffic. Ensure that it is intercepting and decrypting the secure traffic properly
7. Network Configuration: Ensure that your mobile device is connected to the same network as the proxy server and that there are no firewall or network restrictions blocking the communication
By following these steps, you should be able to resolve the issues related to unknown certificates or handshake failures during mobile testing with a proxy and certificate setup
Hi Raghav,
Does it suits for Mobile native applications. Is this alone for Performance of the application (Native Mobile application ) or else possible to test for load too by adding Listener as we done for web application. Kindly , share the result analysis for Mobile application.
Hi Fouziya, this records the server interaction through a mobile application. So you actually are testing the server side and not client side. Once you have the samplers recorded and are working fine, You can increase the load and run the test as we do for web app testing.
This is really great. But I dont get the sense of usability, why do we need to use mobile phones if we can already run the same stuff on a computer. Do we also capture mobile app requests?
Hi Mohan, there are some web applications that can run on desktop as well as mobile and some are mobile specific apps, In both cases it may be required to test the performance of the app when used from a mobile device
@@RaghavPal I certainly agree.
hi raghava, its a good video. Thanks for sharing.
I need some sugession regarding app client automation. Could you please suggest me if you have any idea
Scenario:
1)Need to verify app loading time
2)verify app login time and
3)app crash rate.
Kindly suggest me if you have idea.
Regards,
Rajesh T
Hi Rajesh, with JMeter you can check the client network communication performance. So it will be mostly server-side performance testing. For client side will need to do some search ua-cam.com/video/XMFrNla8bHI/v-deo.html
Hi raghav I just want to know if there is any method to audit the test execution on devices. As we are doing manual testing of applications on many different devices
So I want to audit that every test case has been executed or not.
Please reply as soon as possible.
Thanks
Hi Shikhar, you need test coverage analysis. There are diff ways you can do it. Check few links here - bit.ly/2KADTx3
Thanks for the video, in my test environment, my desktop and my mobile phone are not connected from the same wifi source.
is it possible to record using a usb cable ?
I don't think that will work
Iam an Beginner in the android deelopment. It is possible of manual testing.If manual is possible then why you are going with process
Hi Sai, I did not completely understand your query, This video is for performance testing of application
Hi @raghav, I want to use jmeter for mobile application, but not able to do the recording, could you pelase help me here, i followed all the steps given by you.
Hi Pranali, what is the issue, it can be your device specific settings
Hello raghav,
My company laptop has a firewall due to which none of the mobile app recording is captured in jmeter. Would you pls suggest how to proceed with this. I am using personal wifi but still recording is unsuccessful in my laptop.
Hi Ashwini, you can set proxy to record behind firewall
Check this - vmokshagroup.com/blog/how-to-test-native-app-performance-using-apache-jmeter/
Nice and easy.. Thanks a lot
Most welcome Mevan
Hi Raghav, Thanks for provided lot of stuff here. Could you please try to do video for native mobile application.
Hi Vinay, I will plan, However JMeter checks the server performance irrespective of any client used.
Informative, it worked for http based mobile apps, but for https based mobile apps, give handshaking problem, and no recording, it does not proceed further? Can you share solution for https based mobile apps?
Hi, have you updated proxy server details.
This can help you - www.testautomationguru.com/jmeter-record-ios-application-http-requests/
Nice viedo, thx for explanation this topic :)
Most welcome
Only record the mobile browser or also installed applications.?
Hi Juanjo, You can do on native application also. But JMeter will only check network calls or in other words server performance and not client performance
Nice!! was very much helpful. I was wondering if you could show us, how to use particular user/users in the sampler from CSV file which consists many or lets say "n"' number of users(for instance, if you want to test the names which have more than 28 characters , for this load runner has parameters where you can customize or randomize the users you want to use from CSV).I was curious to know, if JMeter has such functionality. Thanks....
Hi Shankar, thanks for watching.
In JMeter if you have any custom requirement and you do not have some in-build component you can always use Bean Shell Sampler and write your code here.
I enjoyed your video :) Keep it up!
I've done with this and it works fine. Thanks :) Btw is there any possibilities that it can be done using USB Cable instead of Wi-Fi ? Just want to know.
I don't think so Pradeep. Can check some information here stackoverflow.com/questions/52287941/is-it-possible-record-traffic-from-mobile-device-without-wifi
hello, i have a question, hopefully you answer me. i follow all the steps in this video, did research, but still i can not record my mobile with jmeter. when i set up my phone keeps wifi connected but with out internet. again i havent miseed any of the step that you mentioned in this video.
Check for your specific mobile device, May be some settings are different
Hi Raghav, I just have to do all this steps and all the testing is similar to web load testing?
Yes
@@RaghavPal Thanks
@@RaghavPal I have done the setup but net is not working after setup, after remove the proxy details, its working fine
It sounds like the proxy settings might be causing the issue with your network connection. Here are a few steps you can take to troubleshoot and resolve this:
1. Check Proxy Settings: Ensure that the proxy settings are correctly configured. Sometimes, incorrect proxy details can block network access.
2. Bypass Proxy for Local Addresses: If you're using a proxy, make sure to bypass it for local addresses. This can usually be configured in your proxy settings.
3. Check Firewall Settings: Ensure that your firewall isn't blocking the connection when the proxy is enabled.
4. Update Proxy Details: Verify that the proxy details (IP address, port, username, password) are correct and up to date.
5. Test with Another Proxy: If possible, try using a different proxy to see if the issue persists.
6. Check Network Configuration: Ensure that your network configuration is correct and that there are no conflicts with the proxy settings.
If you are using company laptop, you might want to consult with your network administrator or IT support team for further assistance. They can help ensure that the proxy settings are correctly configured and that there are no underlying network issues.
--
@@RaghavPal Could you make video for the apk? Everybody wants to know about it.
superbly explained .
Thanks for watching Deepak
Thank for sharing! Really good video tut...I really aprecciate it!
You're welcome Diana
hi mukesh can we test performance for native app.please help me out.Suggest me any other tool for performance of native app.if any.
Hi Amit, irrespective of the app JMeter records and check performance of server communications
Hi,
Can we record powerapps as well ?
Hi Aravinthan, will need to check for the specific app and if any sampler is present for that in JMeter
Hi Raghav, thanks for the video. Can you please explain what is Bandwidth testing in mobile for Performance testing using Jmeter.
Hi Saurabh, do you mean the internet bandwidth testing? There are several apps present for this
@@RaghavPal can you please specify few apps for them or any links to check
Hi Saurabh, i believe this is more about Network Throttling
Try Chrome Dev Tools and also check this:
www.browserstack.com/guide/how-to-perform-network-throttling-in-chrome
@@RaghavPal Thanks Raghav, will look into it. I am moving as performance tester. The only lagging thing is AppDynamics for memory leakage testing and Mobile application performance testing. Is there any site I can learn AppDynamics. Have seen few videos on it but configuring is not shown anywhere. Plz suggest
Not very sure on AppDynamics Saurabh,
Awesome video, as always. A quick question, will this work with a mobile app? I have an application on mobile which uses REST api to communicate with the server. Following the steps from this tutorial, will it record API calls too?
Ideally it should record all network communications
@@RaghavPal Hi Raghav, Your videos are so helpful for me in sorting out many things. I tried the same steps as you mentioned but unfortunately, I am able to record the calls that I do from the device browser but not from the native app. Do there any other specific port that will get utilized from the native application in order to the calls...? Please confirm....!!!
and can you prefer to the emulator to use mobile use in Website?
Basically, we need to record the network calls. If you can setup emulator as we have done real device, you can use it
Great, Thanks for the video
Hi Raghav, a very nice video but can you post something using the iOS app too?
Thanks.
I will plan Pratim
@@RaghavPal Thanks for the quick response. That'd be of great help!
Hi Raghav, I have to load test a mobile native app. I am using JMeter version 5, I have connected my office laptop and mobile device to same WIFI network and when i try to set the proxy configuration by giving my laptop ip and port as 8888 then save in mobile device. I am getting 'No internet connection' in mobile device. I am struck here
Hi, it depends on the mobile settings for the specific device you are using. There are a few steps you can try to resolve the issue:
1. Check that the proxy settings on your mobile device are correct. Make sure that the proxy host and port match the values you specified in JMeter. Check for extra spaces, spellings etc.
2. Restart your mobile device and JMeter to see if the issue is resolved.
3. Check that your mobile device is connected to the same network as the machine running JMeter. If the device is connected to a different network, it may not be able to access the internet through the proxy.
4. Make sure that the network connection on your mobile device is stable. If you are using a wireless connection, try switching to a wired connection or vice versa.
5. If you are using a VPN on your mobile device, try disabling it to see if it is causing the issue.
6. If none of these steps help, you may need to check the JMeter logs to see if there are any errors or warning messages that can help you troubleshoot the issue.
7. If you are still unable to resolve the issue, you may need to consult with your network administrator or IT support for further assistance
Pls try and let me know if any of these work for you, it will help others
Great job
Thanks
Great video, very useful. Thanks for creating and sharing.
You're welcome Dermot
Bro is it mobile web application recording or mobile app recording. I am new to this mobile tesitng
This is recording the server interactions through a mobile client. JMeter tests only server side performance
Amazing Tutorial.
Great work.
Thank you.
You're welcome Manuel
Hi RaghavPal, I followed the same steps from the video. But when I change my proxy settings in mobile and start the recording, it is showing "No data connection" in mobile. I have also installed Jmeter Certificate and enabled developer options on my phone but there is no sign of any samplers in Jmeter and the internet is not working from mobile.
At first tried in company laptop it did not work, also tried with my personal laptop it did not work.
Please help!!
Hi Ullas
There are a few things that could be causing the "No data connection" error in your mobile when you try to record using JMeter.
* The proxy settings on your mobile may not be configured correctly. Make sure that the proxy IP address and port are correct, and that the proxy is enabled.
* The JMeter certificate may not be installed correctly on your mobile. Follow the instructions in the JMeter documentation to install the certificate.
* The developer options on your mobile may not be enabled. Make sure that the developer options are enabled, and that USB debugging is enabled.
* The mobile and laptop may not be on the same network. Make sure that the mobile and laptop are connected to the same Wi-Fi network.
If you have checked all of these things and you are still getting the "No data connection" error, then you may need to contact your mobile carrier or JMeter support for help.
Here are some additional things you can try:
* Restart your mobile and laptop. This may sometimes fix the issue.
* Try a different proxy server. If you are using a public proxy server, try using a different one.
* Try a different mobile device. If you have another mobile device, try using that to record with JMeter.
I hope this helps
zabardast short and crisp explanation. In case I want to check the load for n number of numbers then how can I do that via Jmeter. kindly help me with the steps or with the video link if you have any
Hi Mansi, I did not exactly got your query, can you give some example
@@RaghavPal Sure, let me elaborate, I want to do load test of application in case 1000, 10000 or any n number of users hit the mobile buttons at the same. As of now we have tested the mobile app for just one user via steps mentioned in above video.
Okay, in JMeter when you create threads, they are treated as multiple users, Now in case you have options to add a user id or name in the request, you can change with every thread by using some functions like randomNum, randomString or take values from a csv file
Thanku, I will try this
@@mansigupta4618 Hi, Can you please tell me how to config mobile to pc
Hi, you have recorded script for a website from android device.Can i record scripts from any app(.apk ) in android mobile using the same steps explained in this video.
Thankyou.
Hi Binu, not tried it. you can try that out.
I have same question. Is it possible to record and perform load testing on Mobile apps using jmeter?
Hi Raghav da, question. These steps are working absolutely fine for Mobile browser applications. But for Native Apps. the JMeter is not recording any details. Are there any specific configurations to be done for recording for Native Apps. Kindly advice
Hi Sumit, you can check some online examples, In any ways, JMeter only checks network requests performance and not client side performance
Hi Raghav, Can we test xamarin x-platform application by jmeter?
Hi Gaurav, have never tried. Pls try to get info online
@Raghav Pal
is there any option in Jmeter were we can drop messages into MSMQ ?
Hi Sarin, replied to your another comment.
Hi Raghav, I have a problem, I want to use multiple users to run the test plan. In my application after user login, the system will gen ID and token, I see that each request has Header Manager to save ID and token. Can I use the random function to random ID and token in Header Manager to run my test plan? Thanks so much.
Hi Ánh, in case that works for you, can do it
I am getting using the website you said.but not getting with our react native app.what would be the reason
Darshana
When using JMeter to test a React Native app, there are a few considerations to keep in mind:
1. JMeter Limitations:
- JMeter is not a browser; it operates at the protocol level and doesn't execute JavaScript or render HTML pages like a browser does.
- It records requests based on network traffic, but it won't provide metrics like page rendering time or JavaScript execution time.
- If your recorded requests match those seen in the "network" tab of your browser developer tools, you can still use JMeter for performance testing.
2. React URLs vs. API URLs:
- JMeter records requests made by your app, including API URLs. If you're not seeing React URLs, ensure that you're interacting with the app in a way that triggers those requests
- React URLs may not be directly visible in the recorded requests, but as long as the essential interactions are captured, JMeter can simulate load effectively
3. Frontend Metrics:
- If you need frontend metrics (e.g., page load time, JavaScript execution), consider using browser automation tools like Selenium (integrated with JMeter via WebDriver Sampler) or Playwright
- Alternatively, use frontend performance testing solutions like Lighthouse
4. Certificate Trust (for Mobile Apps):
- Ensure that your React Native app trusts JMeter's certificate. If not, you might encounter issues
- On Android versions after 7.0 (Nougat), you may need to add JMeter's certificate directly to the `/system/etc/security/cacerts/` file
- Check your application's network security configuration and amend it if necessary
5. React App Troubleshooting:
- If you encounter issues specific to React apps, consider checking the React app itself
- Avoid dependencies that use modern syntax incompatible with JMeter or upgrade to a compatible version of `react-scripts`
Remember to adapt these steps to your specific scenario
-
Hi I want to test login and logout process for mobile application with multiple users but I am facing an issue as login consists of two steps..
First to enter mobile number and then enter OTP and OTP is getting changed for every user.
Having OTP step for every user will be tricky. There are 2 ways you can deal with it.
1. Have your dev team skip the OTP validation in Test env or have a fixed OTP.
2. Other workaround can be to send OTP to email and then have a mail sampler to fetch it.
This will again will need some coding and will not be straight forward
If you can go with 1 that will be great.
1.Do I need to update the certificate in my computer every time when I press "Start" from test script recorder?
1 thing i notice that certifacte creation date is not updating when i press "Start" from test script records its showing old date when i first created that.Plz help me out.
Hi Raghav,
I got mobile application for performance. In the mobile application I have to teat call functionalities, like audio call and video calls, users within how many seconds should be able to join, I don't have permission to to record using proxy to jmeter, so in this case how can I record calls for performance testing, can you please help me.
Challa
Since you can't use a proxy to record traffic, we need to find an alternative approach
Use JMeter's Mobile Recorder: Although you can't use a proxy, JMeter has a built-in Mobile Recorder that can capture mobile app traffic. However, this requires the mobile app to be instrumented with the JMeter agent.
b. Use a network sniffer: Tools like Wireshark or Tcpdump can capture network traffic, including the calls made by the mobile app. This would require some technical expertise to set up and analyze the captured traffic.
c. Use a mobile app testing framework: Some mobile app testing frameworks, like Appium or Robotium, provide features to simulate user interactions, including making calls. These frameworks might allow you to script the call functionality and measure the time it takes for users to join.
d. Collaborate with the development team: If you have a good relationship with the development team, you could ask them to provide you with a test environment or a modified version of the app that allows you to record traffic or measure call join times.
Thanks for posting this!
Thanks a lot for the support Orlo
Great tutorial man! Thanks!
You're welcome Andres
hello.i have seen all your videos regarding load test with jmeter.I have one request. please make a set of load rest tutorial in which you test one whole website step by step so that new ones like me understand that how actually we can test load on a whole website. thank you
Hi Hina, thanks for watching. Although i have covered most of the concepts in these sessions. And you can apply this knowledge in your project, i will try creating the session as requested by you if i get some time.
Can we do performance testing for Mobile hybrid Apps using J Meter.Please update.
Hi Syam, irrespective of the client use, JMeter will only capture network requests, that is req and response to server. So this is for server side performance testing and not client side.
@@RaghavPal Thank you.
Can you please upload one video regarding - How to do android/IOS app load testing using Jmeter.
I will plan Telugu
@@RaghavPal Still I am waiting for your video.
How can I operate mobile from my Laptop as you shown in this video?
You can use Vysor app
should I install the Visor app in PC or Mobile??
Hi, I saw in your video when u tap on home button or archives button, In transaction controller Archives name is displayed automatically. I tried same in my jmeter while recording. Its not capturing names when I tap on home page, or different button. Its difficult to understand for which button recording is happening. Any idea? Also I didn't find any option to install certificate in wifi advanced for Android SAMSUNG QOS device. Need ur help :)
Hi Nazneen, it may differ for websites and applications, you can check the url for this