Recording AJAX requests and Pop ups using Jmeter or Badboy - testing

I am trying to load test a website where lot of images are called via Ajax and the very first thing i.e. logging into the application opens up a pop up when we click on log in button. I tried JMeter proxy settings to record it but failed. Also tried with Badboy, and it didn't work out too.
The limitations I have with me is I need to load test it with JMeter only. Are there any plugins available which can be integrated to JMeter so that AJAX and pop ups in an application can be handled in a much better way.

In general, JMeter does not have a problem with Ajax or Popups - so there is no plugin to address such. Both recording and playback happens at the HTTP layer so things like popups are somewhat irrelevant and Ajax is more a matter of timing; but in both cases it is only the HTTP call that matters. So, if you are having a problem, it could be something else that is holding you up. Try playing with the Proxy settings or using a different browser, beyond that you would need to expand 'didn't work out' and 'it failed' into a more detailed problem statement!
One solution - regardless of your exact problem - is to build the testplan manually, this is often actually the easiest way to work with JMeter. You can use a tool like fiddler or charles to examine the traffic and create the requests directly based on what you see. You can also use browser dev tools to do this. You might instinctively think this is going to be difficult but it's not and the added bonus is that the process gives you a solid understanding of how whatever it is you are testing actually works - which is always nice to have.

JMeter is a tool for testing server-side activity; as long as you record every request to server-side it doesn't care whatever happens on the client. Can you give details abt why JMeter "failed" to record Ajax requests?

Are you sure that you have included recording controller to your Jmeter thread group?
I think you are missing with you configuration for "recording controller" or "HTTP Request Sampler"
Some more information about your "didn't work" situation will be much more helpful.
I'll suggest that you should also have a look at the Jmeter Log file(jmeter.log) created in "Bin" folder to understand the root cause of of the issue.
Thanks,

Related

I need some maybe autotests to check that the application is working, and if system doesn't work send message

Main reason: I need to check every hour that the application is working (requests or via ui), if errors or pages are not loaded, then I need to send a message to telegram (for example), with the ability to view the report (errors, logs, screenshots, all possible information)
Maybe you can recommend some tools javascript or java. It preferably ui tests (but api can be too). I think, maybe something like java test with selenium and allure and set up teamcity, but maybe there are other more comfortable tools.

I am not able to get the grid data in jmeter using post processor

I am having jmeter to perform testing. However I have visited to some while doing the testing. when I have view the result of the same in that except the grid table data it shows the every details on the web page. I am having jmeter 3.0 installed on windows 10 64 bit.
Thanks for replay
as you said i have change the path from "/ntes/specialTrains.jsp"
and made http request default as "enquiry.indianrail.gov.in"
Error message is not displayed, but still not able to get the grid in the output.
attached the screen shot please have look.
"Issue is still not resolved. so please assist for the same"
I'm not fully getting your answer, however here is a couple of advices:
You won't be able to see the JMeter Variable originating from the XPath Extractor in the View Results Tree listener unless you add a Debug Sampler to your Test Plan. View Results Tree listener itself has XPath Tester mode where you can evaluate your XPath queries directly against the "live" response without having to re-run the request. See How to Debug your Apache JMeter Script article for above instructions explained in details.
Your 2nd request is misconfigured. It should look as follows:
Server Name or IP: enquiry.ingianrail.gov.in
Path: /ntes/specialTrains.jsp
Actually the easiest way to get JMeter test script "skeleton" and avoiding errors like above is just recording it via JMeter's built-in proxy server. See JMeter Proxy Step by Step guide for instructions.

How to work with apache Jmeter with ZK Framework

I am new at performance testing and I would like to load 500 virtual users and check the response time of my application.
I want to use apache jmeter with ZK Framework.
Can you please help achieve this?
I don't know whether you've already resolved your problem or not, but the first thing you will need to do is download the relevant zk plugin (zk-jmeter-plugin-0.8.0.jar) available via http://blog.zkoss.org/index.php/2013/08/06/zk-jmeter-plugin/
save the plugin .jar to %apache-jmeter-root%/lib/ext
Once you've downloaded this, run JMeter. Within the Workbench object in your JMeter hierarchy, there will be a new 'Non-Test Element' entitled 'ZK HTTP Proxy Server'. You will need to use this rather than the standard JMeter 'HTTP(S) Test Script Recorder' to record your http requests.
I'm new to JMeter and the ZK Framework myself, but I've just been working on this so hopefully this detail will be helpful.
There are some additional config files you will need once you actually get going, but I'll wait to see if you still need any more help before bombarding you with info you might already have.
Cheers,
sqeeky

Recording scripts - "page not found" because of single protocol?

I have found a strange issue which I do not completely understand. When I run the LoadRunner with just a single protocol, the browser (when recording starts) is ran but says "page not found" (as if the proxy was not set).
How come? The protocols specify what traffic will be captured but I assumed in just does not record the ones not specified. But why the browser could not find the page in single protocol and could in multiple?
I've found that the single protocol mode (I assume web here) is somewhat erratic and does not work all the time. The workaround is to use the multiple protocol mode, but select only Web (HTTP/HTML). This works much better.
The actual reasons for why this is the case are unknown, but at least give it a try!
As for other issues:
Check that your PROXY settings are correct when you invoke IE for recording. Your issue sounds a little like a proxy issue, but please post more details if none of the above works.
Over 90% of recording issues can be tracked to environment items, specifically do you have the right match up between version of LR and version/manufacturer of your browser plus are you signed in with the proper credentials plus do you have any conflicting software packages loaded, such as antivirus, which could be impacting the recordingf mechansim.
Where to start?
Makes sure you are signed in with Administrative credentials
Disable any antivirus running locally
Validate your browser manufacturer and version with the requirements for your version of LoadRunner

Is there an HTTP proxy tool that can substitute browsed content?

What I'm looking for is some sort of a proxy tool that will allow me to specify a local file to load instead of one specified in the web page that is being browsed. I have tried Burp Suite which is almost working - it allows us to intercept a file and replace it by pasting the contents of the file we are swapping in into an input field. The file content is compiled code (Flash content) so we are pasting in bytecode, but something isn't working.
The reason is we are a 3rd party software developer without access to our client's development or testing environments. Our content must interact correctly with the rest of the content on their webpage (there are elements on their page that communicate with our content) and to test any changes we make takes several hours turnaround to get our files uploaded to their servers. So what we need is some sort of hacking tool to let us test our work with their web pages, hence the requirement to specify a file in a webpage to swap with a local version.
The autoresponder feature in Fiddler Web Debugging Proxy might do what you need, if it's only static content.
I've been using HTTP::Proxy for a long time, and it has always helped me fiddle with things on the fly.
You might be able to do this with Greasemonkey but I'm not sure if the tests will be totally reliable.
http://diveintogreasemonkey.org/patterns/replace-element.html
And if Greasemonkey seems plain wrong for you I would take it as the perfect excuse to try out mouseHole. Now I have to admit that I've never tried it but since _why also made Hpricot I expect it to be fun, productive, and different.