Ask Me Anything!

Have something to ask??

Found a post interesting but want more info?

Want to suggest a topic??

Fells like discussing a subject further?

Have something to share??

Want to check if I can help you with a problem?

You came to the right place!!

Ask your question or leave your thoughts on the comments section.

  1. #1 by Paul - April 24th, 2010 at 18:57

    Hi Martin

    First of all I would like to thank you for the nice posts about LoadRunner+Citrix. I am working on a project where I am required to use only 1 ICA File to connect to the application which I can connect in the vuser_init section and other application processing will be in the Action section.

    My issue comes as each vuser opens a new session with application, how can I use 50 Vusers with only one citrix session open? Hope you understood what I want to say.

    thanks

  2. #2 by Paul - April 25th, 2010 at 09:42

    Hi Martin

    one small issue with ctrx_type. When I use a string with ctrx_type like ctrx_type(“abcdef”), it misses the “a” or “b” characters while replaying the script.

    I am trying to save a string in a variable and call it like

    char var = “abcdef”
    ctrx_type(&var)

    but its giving me pointer error. Can you please help with this also?

    thanks

  3. #3 by Martin - April 28th, 2010 at 17:48

    Hi Paul,
    glad to hear that you’re enjoying the blog. Sorry for taking some time to answer, I’ve been out of town for a few days.
    If I understood correctly, you’re looking to increase the load (50 vusers) with only one session open, to avoid licensing issues I guess.
    Problem is that to increase the load you need to increase parallelism, increasing the number of vusers. Each vuser will require a separate “channel” with Citrix to perform its tasks. Each Vuser is independent of each other, therefore, requiring a separate session. Nothing you can do there. If you have no wait time on the script, the only option is to increase Vusers and consequently, increase open sessions.
    Bottomline is, imagine that each Vuser will be executing a different step on your script flow. Since each step depends on a specific flow step, you need several flows running in parallel, meaning you need several sessions open.
    Hope my answer helped. Let me know if I misunderstood the question.

    Regards,
    Martin

  4. #4 by Martin - April 28th, 2010 at 17:51

    Hi Paul,
    never had this issue, but I guess it can be related to a delay on sending the keystrokes. Have you tried sending the keystrokes separately??

    ctrx_type(“a”);
    ctrx_type(“b”);
    ctrx_type(“c”);

    If that doesn’t work, you can try including a wait between steps.

    Cheers,
    Martin

  5. #5 by Paul - April 30th, 2010 at 01:08

    Hi Martin,

    Thanks so much for your replies. I already tried sending separate keystrokes. It works but I found that parameterization works better. It sends the complete string instead of separate keystrokes.

    I will send you update soon about the first issue.

    thanks so much for your reply.

    Paul

  6. #6 by Andrea - June 3rd, 2010 at 16:09

    Hi Martin,

    thank’s for your essay about Lr + Oracle 11i. I have some doubts about my script: first of all, I tried to record a multiprotocol script, HTTP & Oracle NCA, but I don’t know why the Oracle WBS shows a message like “unvalidate session” even though I correlated the parameters (i.e. “_ti” and “_oas”). Then, with your indications, I tried with “oracle web app 11i” protocol, and during the login operation to Oracle Form, the system shows a “unable to connect” or “bad credentials or database connection” message.

    Can you help me? I’d be very thankful!!

    Andrea

  7. #7 by Martin - June 4th, 2010 at 06:49

    Hi Andrea,
    Just have a quick question. The target system is running Oracle 11 or 12??

    Regards,
    Martin

  8. #8 by Andrea - June 4th, 2010 at 12:44

    Martin :
    Hi Andrea,
    Just have a quick question. The target system is running Oracle 11 or 12??
    Regards,
    Martin

    Hi Martin,

    it’s Oracle 12.

    Thank’s,
    Andrea

  9. #9 by Martin - June 5th, 2010 at 16:18

    Hi Andrea,

    Ok, so you followed the steps from the the post “Creating Oracle 12 Scripts on LoadRunner”, right?

    LoadRunner was able to capture the ICX and JSession parameters correctly??
    Is the connections encrypted (HTTPS)?

    Cheers,
    Martin

  10. #10 by suresh - June 15th, 2010 at 08:05

    how we can identiy the bottlenecks in windows montioring tool and what is the block mechanism in parameterization in load runner ? give me answer asap.

  11. #11 by Martin - June 21st, 2010 at 11:30

    Hi Suresh,
    Sorry for the late reply. I was away on a business trip.
    From what I understood you have two questions:

    How to identify bottlenecks on Windows boxes? Finding bottlenecks is a skill that comes with time. Once you tested different technologies and different types of applications you will start noticing things that are not normal and need more attention. One way to start is look into the basic perfmon (just exec. perfmon on the shell) and check the counters for CPU usage, Memory usage, IO, Network, etc. On the % you usually expect less than 80% used, but this depends highly on your application. IO should usually be less than twice the number of disks you have on the server. If it is 1 disk, should be less than 2. IO, usually less than your bandwidth. This is a way to start, but with time you will start looking at significantly more counters to check for bottlenecks.
    What is the block mechanism in LR? I’m not sure what you mean by block mechanism, but probably you are referring to the block size when using a Unique parameter. In this case, the block size means the number of items used by each VUser during the execution. If you expect each VUser to run 100 times on the loop, you will need to specify a block size of 100. Depending on your application you will need a significantly larger block, since this can be reached quite easily. Imagine that the block is a set of numbers used by each VUser and this needs to be specified before the test starts.

    Hope I have answered your questions!
    Cheers,
    Martin

  12. #12 by syed - June 25th, 2010 at 03:56

    Question: How can I import a WSDL file from a SSL(Https) site using web service protocol i.e import service by selecting the URL.

    Problem I am having is once I click the import button, I am getting a popup for username/pswd.
    note: after talking to developer, I was told that since I am using “https” I need to provide a user certificate.

    Your help/suggestion is appreciated

  13. #13 by Martin - June 25th, 2010 at 10:06

    Hi Syed,
    Usually importing services from WSDL over SSL (HTTPS) is simple. The steps are pretty much the same as the ones described on the “Using WSDL files to Create WebService Scripts” post. You only have to add the auth details on the Import Service window, by clicking on the “Connection Settings …” button, checking the “Use Authentication Settings” checkbox and then entering your username and password on the required fields. Just remember that if you are using a Domain account, you need to add the domain name to the username too.

    This usually works and I never had to do anything else to import the services. If that doesn’t work for you, double check your username\password and also the domain name if necessary.

    Cheers,
    Martin

    Reference:
    http://martinspier.co.uk/wsdl-files-create-webservice-scripts

  14. #14 by dev - July 8th, 2010 at 03:16

    Hi :

    I am trying to record the script for a Webservice remote protocol over loferay portal. while i record the script using html/url modes, I get a lot of web_custom_requests which fail in the controller. Is there any special recording mode that i can use for this application,

    Thanks,
    Devaki

  15. #15 by Martin - July 8th, 2010 at 13:43

    Hi Devaki,
    Usually LoadRunner falls back to web_custom_requests if it can’t map the request to the other types of web request. This is usually not a problem, you only have to pay more attention to the request body since it is not neatly organized. I’m not familiar with Liferay, but I assume they use it on their website, so I tried recording with the usual HTTP/HTML on HTML mode and no custom requests. Nothing special there, but your implementation might have some differences. The problem is only on the controller or on VUGen too?? It might be a concurrency problem on the website if that is the case.
    Have you tried recording the same steps to another script and compare the two with diff?? You might be missing a correlation on the custom request.
    If that doesn’t help, send me a sample of your script to have a look.

    Cheers,
    Martin

(will not be published)
  1. No trackbacks yet.