Unanswered question

How to read messages on websocket?

I have an application that accepts websocket connection. The application also sends messages on the websocket asynchronously. It means the requests are NOT ALWAYS initiated by the virtual user on neoload through the websocket. A lot of times the application also sends messages asynchronously on its own. I’d like to read those messages sent by my application server. I only want to read the messages I would be interested in.

Currently Neoload allows sending text messages in the websocket pipe but what I am also looking for is a way to read messages sent by my application server in that websocket by Neoload. This is similar to JMeter’s “Websocket Single Read Sampler” feature. Does Neoload support something like that for websockets?

Please see the section “Websocket Single Read Sampler” on this page to understand what I am looking to do: https://www.blazemeter.com/blog/jmeter-websocket-samplers...

Ahsan B.
Ahsan B.

Ahsan B.

Level
0
19 / 100
points

Answers

Nouredine A.
Nouredine A.

Nouredine A.

Level
4
5000 / 5000
points
Team

When you record an application with WebSocket  you will see in your user path a WebSocket Channel request. This request is where you will be able to see the data sent by your server.

You can directly extract data on that channel request or better you can create a PUSH message to filter the type of message you are interested in.

For more details you can look at the NeoLoad documentation here.

Ahsan B.
Ahsan B.

Ahsan B.

Level
0
19 / 100
points

@Nouredine A

Our client-server communication via websocket cannot be recorded via browser as it requires some special headers with the requests. Is there a client that I can use to record the websocket request into Neoload? Currently. I have manually created the user path with my websocket channel and requests in it.

As per your reply, you said we can directly extract data on the channel request. I am able to see the responses in the "Recorded Response" section when going to "Advanced --> Recorded Response tab" on websocket channel. But how do I extract any specific response at test runtime and do some action in response to it? Neoload documentation doesn't have that information..

Our application is using zuul that supports websocket push. If I want to use the push polling to look for a specific message with some specific content, how do I do that?

Here is the push framework our appliation is using:
https://github.com/Netflix/zuul/wiki/Push-Messaging

As per Neoload's Websocket and Push support page, I don't see websocket push as a supported framework by neoload. Is this correct?
https://www.neotys.com/technologies/load-testing-and-moni...

If you can send instructions on how to create Push polling for a websocket channel manually (without recording) that would be great!