Highlighted
Outstanding Contributor.. Outstanding Contributor..
Outstanding Contributor..
744 views

Web HTTP/HTML: web_reg_find() error

Hi, 

I've recorded a script in Web HTTP/HTML (LR version 12.53) that consists in a simple web service call (I've used web_custom_request function). I have to say that the application is very fast, and I've used 50 Vusers on the controller scenario. There are many error message that do not match the response received: the same control string also compares in the response! How it is possible? Maybe the application is too fast and the users contemporaneity can affect this?

Thank for any help. 

Lorenzo

   script control functions: 

web_reg_find("Search=Body",
        "Text=retCode>000</retCode",
        LAST);

    web_reg_find("Search=Body",
        "Text=retDesc>Estrazione avvenuta con successo</retDesc",
        LAST);

   response received as error: 

imm.PNG

 

0 Likes
10 Replies
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: Web HTTP/HTML: web_reg_find() error

I do not think that the your test application is too fast/ I found it difficult to understand what you mean. This is what I understand: You setup two web_reg_find() calls, do your web_custom_request() and an error is reported by the web_reg_find() that the response did not match, but you are convinced that the response is OK and the two web_reg_find() should return a positive response.

Some question / suggestion:

Did you examine the failed responses with the help of full logging (I assueme you did)?

Can you add two web_reg_save_param_regexp() for parameters that capture the content of "<retCode>(.*?)</retCode>" and "<retDesc>(.*?)</retDesc>". You can then verify in the (full) logging what LR think it sees in the response string.

 

Signature:
Reward community members who take time to respond and help.
Highlighted
Outstanding Contributor.. Outstanding Contributor..
Outstanding Contributor..

Re: Web HTTP/HTML: web_reg_find() error

Hi JHF, 

thank you for the response. It's correct what you said: there are two web_reg_find() before a single web_custom_request() and the response is counted as failed despite controls are respected. 

I've see all logs on load generator and there are many responses like the image I've posted in the previous post. I've tryed to use the paramter function to capture some evidence of values but I've no error in single replays. 

It's a strange behavior from LoadRunner: I've always insered more then one or two web_reg_find() to add controls on my scripts, but this time seems that a lot of responses have "jump" the controls. 

What do you think appened?

Lorenzo

0 Likes
Highlighted
Outstanding Contributor.. Outstanding Contributor..
Outstanding Contributor..

Re: Web HTTP/HTML: web_reg_find() error

My supposition is that the application is too fast and, maybe, some response "jumps" the control functions. In effect, this particular program has a 385,331 TPS (Transactions Per Second).

Can you think this can be real? Is a behavior that the software can manifest?

Lorenzo

0 Likes
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: Web HTTP/HTML: web_reg_find() error

@lb1(hi Lorenzo)

How many concurrent users contribute to 385,331 TPS and how many transactions is one user executing in one iteration?

Do you have your test free running with 0 think time? You might try to insert e.g 5ms think time and see how LR behaves (you might need to compensate with more concurrent users).

Cordiali saluti, Erik

Signature:
Reward community members who take time to respond and help.
0 Likes
Highlighted
Outstanding Contributor.. Outstanding Contributor..
Outstanding Contributor..

Re: Web HTTP/HTML: web_reg_find() error

Thank for your interest, JHF. 

The scenario was launched with 50 Vusers, but the same issue was feried in another run with 5 Vusers: in the first scenario (50 Vusers) there were many errors, in the second one (5 users) just one failed transaction (a response with the tag contained in the web_reg_find). The duration is 10 minutes for every run. 

In the case of the 50 Vusers scenario, the TPS amounts to 1.654,436 calls per second. 

Usually, I don't insert think time or pacing time in web service tests, including this particular scenario. 

Unfortunetly, due the application lies in production environment, I can't reply the launch everytime, so I have to wait for a particular moment to re-run the test. 

JHF, do you think my supposition is correct? I mean, about the velocity of the application, and the consequent fact that some controls are "jumped"...

Thanks again,

Lorenzo

0 Likes
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: Web HTTP/HTML: web_reg_find() error

I found many bugs in LR over the years, so it might be possible, it might that you hit a race condition in e.g. memory allocation in LR, but I would then expect that these kind of issues end in a crash (memory violation kind of issue), or that network messages are messed up.

When I take the 50 users example and your TPS rate, I see that one call takes about 30 usec. I guess the call is so quick because all is returned from cache of the services. But due to network latency I would expect a lower rate per user, or do you test via localhost or between internal connected VMs?

The most important questen is to be sure that LR receives a correct response and that the conclusion of LR is: no it is not a correct response because it fails the web_reg_find() tests.

It will be hard to bring this to support, because they cannot validate it internally, unless you have prove that message is send correctly (e.g. wireshark trace) and LR messes thing up.

Regards, Erik

Signature:
Reward community members who take time to respond and help.
Highlighted
Outstanding Contributor.. Outstanding Contributor..
Outstanding Contributor..

Re: Web HTTP/HTML: web_reg_find() error

Thanks JHF. 

Unfortunetly, due the delicacy of the environment, it's difficult to request a deep control with other software. Anyway, you're correct when say that the application use a caching system, that's the reason of a faster TPS. In add, I've do my test using external load generators (virtual cloud machines), I never use localhost as generator. 

I hope some LR internal technicals would remedy or give a motivation to this phenomenon. 

Thank you again, 

Lorenzo

0 Likes
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: Web HTTP/HTML: web_reg_find() error

I see now that I read your TPS rate wrong I think. You use as decimal separator the ',' and for thousands the '.'. So that makes the roundtrip time per call about 30 msec: better value.

 

I did a quick test with an internal json server with also two web_reg_find() checks. I got with 15 users 400 TPS, let them run for 15 minutes without any error.

I'm using LR 12.55.

Signature:
Reward community members who take time to respond and help.
Highlighted
Outstanding Contributor.. Outstanding Contributor..
Outstanding Contributor..

Re: Web HTTP/HTML: web_reg_find() error

Thank for the suggestion, JHF. 

As I said before, due the complexity of the environment (production) I can't reproduce the scenario every time. Next time I will follow your prompting. The strange thing is that in the current script I already have two web_reg_find() and error response messages contain these last strings. In my opinion, application is so speed that some controls are "jumped", so we can considerate this as a bug of the Controller-VuGen communication. 

Are you agree with this supposition?

Lorenzo

0 Likes
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: Web HTTP/HTML: web_reg_find() error

Hi @LB Lorenzo,

When you are sure that the response is right and the web_reg_find()s are failing you might raise a bug report. But you might also try to move on to LR 12.60 first because it might be that it is fixed already.

Success,

Erik

 

Signature:
Reward community members who take time to respond and help.
0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.