I have followed most of the JMeter tutorials, but there's one thing that prevents me from testing our app specially iOS. I can't be in one network. We have a separate network for both Mobile and Desktop/Laptop. Is there any way that I can record JMeter using Wired Connection, instead of WiFi? Thanks!
If you have to use JMeter for recording mobile device activity you could go for USB Tethering, this way your computer becomes connected to the iOS device network hence JMeter should be able to capture the traffic.
An easier option would be going for BlazeMeter Proxy Recorder, as a bonus you will have possibility to export recorded scripts in "SmartJMX" mode with automatic detection and correlation of the dynamic parameters.
Related
My scenario is given as below :
I login into application and upload a doc file then request send to server where thrid party tool (doc to pdf)is running and convert doc file to pdf and send file conversion status pass\fail on application. Can i Record scenarion in JMETER that access microsoft remote desktop protocol and check third party tool activity and come back to application?
Thanks,
Raman
If you want to "record" the RDP protocol the answer is "no", JMeter's HTTP(S) Test Script Recorder can only record HTTP or HTTPS protocols, other traffic will not be recognized.
If you want to take some screenshots of the remote Windows machine you can use i.e. JavaRDP library from JSR223 Test Elements
If you need to read the conversion log and add it to JMeter test results it might make more sense to consider connecting to the machine using PowerShell Remoting from the OS Process Sampler.
Check out How to Run External Commands and Programs Locally and Remotely from JMeter article for more information on the concept and example configurations.
Our application is a medical module & from the device we are getting continous ECG waveform & some vitals say Heart rate.
Application is using WebSocket protocol & the communication is happening via Signalr.
Using jmeter websocket plugin I am able to connect the device.
But unable to get the real time data as the ECG waveform is streaming continously.
For me its impossible to get the real time data via JMeter.
Is there any other way in Jmeter or except Jmeter, using which I can able to open multiple web browsers at a time & login with different user credentials & open live streaming page?
You can use "jp#gc - WebDriver Sampler" and "jp#gc - Chrome Driver Config" for chrome to run multiple browser. Config will have the path for chrome driver exe and sampler will have the code for user operation. Then, thread group can be used for multi-threading/multi browser.
Similarly you can use for IE and Firefox.
Documentation: https://jmeter-plugins.org/wiki/WebDriverSampler/
I have not used websocket but found below link.
https://www.blazemeter.com/blog/websocket-testing-apache-jmeter
Hope this helps.
Could some one please help me on the below
Is it possible to record desktop applications using JMeter?
I just tried the following, but didn't work
File--->Template--->Create
Workbench--->Recording Script-->Start
Launched my application which is desktop and perform some actions
Workbench--->Recording Script-->Stop
When I expand Threadgroup--->Recording Controller-Nothing recorded
Where am I missing?
You miss one important step:
configure your desktop application to use proxy and provide host and port where JMeter is running (localhost and 8888 if they live on the same machine
Also be aware that:
JMeter can record only HTTP or HTTPS traffic, if your application uses other protocol - the calls will not be recorded. In that case you can consider The Grinder as an alternative, it comes with TCPProxy which is more low level therefore is cable to capture more protocols
If your application uses HTTPS protocol you will need an SSL certificate in order to decrypt and record the requests, you can configure your application to use JMeter's certificate or vice versa.
On MS Windows you may need to add a Loopback Adapter
See How to Run Performance Tests of Desktop Applications Using JMeter article for more details on simulating multiple desktop applications using JMeter
As help explains:
The recorder is implemented as an HTTP(S) proxy server. You need to set up your browser use the proxy for all HTTP and HTTPS requests.
Technically browser is also a desktop application, so to answer your first question, yes, you can record desktop applications using JMeter. However, just like browser, your desktop application must have an ability to connect to the internet via user-defined proxy. And also recorder will only record HTTP traffic from and to the application, it will not record client-only UI events, or traffic generated by any other protocols.
So to sum up:
Any desktop application can use JMeter recorder
But only if you can configure it to use JMeter recorder as a proxy
And only if your goal is to record HTTP traffic related to your desktop application, nothing else.
I have a question in IBM RPT, when I’m doing HTTP test via browser there are 2 Recording Method ( Socket Recorder, Proxy Recorder).
As User Manual :
HTTP proxy recorder: Use when proxy connections are required to connect to the network
Socket recorder: Use for low-level network traffic when the client does not support proxies
When I’m using Proxy Recorder, the browser automatically generate a port (Screen capture) at my Localhost proxy (as you can see at here Choosing Recorder type). And the recording work normaly (it works faster than Socket Recorder, when i'm using Socket Recorder it works too slow and sometimes it does not receive any packets!).
Which method should I choose for testing Web App? Is each method affect the performance results?
Please help me fix those problem. I'm sorry cause the attachment i do not have enough point to add a picture
Thank you !
what version you are using ??
If you are using 8.1 go to LAN setting in your PC and disable the proxy Click Apply then save if later let me know
Can we test mobile application either iOS/Android(Native/hybrid)App using Apache JMeter? If yes, what's the way?
You cannot test mobile application directly i.e. how long does it take to load, how responsive it is, etc. via JMeter. What you can do with JMeter is to simulate large number of mobile devices talking to your backend server to measure performance and also apply some client-side assertions to make sure that server's response is not malformed.
It is possible to record mobile application network activity via JMeter HTTP(S) Test Script Recorder as follows:
Add aforementioned HTTP(S) Test Script Recorder and a Recording Controller to Workbench
Make sure that host, running JMeter and mobile device are on the same network (i.e. use Wifi, not cellular data plan) and the host running JMeter is accessible (i.e. firewall software doesn't block port 8080)
Start JMeter's proxy
Configure device to use JMeter's proxy.
Launch your application and perform necessary actions
When you finished stop JMeter's proxy and copy recorded requests to Test Plan
Perform correlation and parametrization if needed
Configure Thread Group virtual users and ramp-up according to your load scenario.
Launch the tests
Analyze results
References:
JMeter Proxy Step by Step
Load Testing Mobile Apps. But Made Easy.
Parametrization in JMeter
Guide to JMeter Regular Expressions