Unanswered question

Only returning 301 or 307?

Current Neoload validation only returns 301 or 307, but running the same tests on postman return correctly. Is there an option or setting that needs to be changed? See the image for an example of the problem.

Jonathan T.
Jonathan T.

Jonathan T.

Level
0
35 / 100
points

Answers

Nouredine A.
Nouredine A.

Nouredine A.

Level
4
5000 / 5000
points
Team

I removed your project from the attachment. Since this forum is public you should not attach your project file but only some screen shot.

If you have a valid support contract  you can still open a support ticket providing your project export.

Regarding your issue and looking at your screen shot it seems that the issue is related to a variable that was not extracted. You can see the location URL containing a NOT_FOUND variable.

So could it be an issue with your CurrentOrderId variable?

Or i can see that you are using a JS to probably sign some parameters related to AWS token. Could it be that this token is not correct?

 

Jonathan T.
Jonathan T.

Jonathan T.

Level
0
35 / 100
points

Hi Noredine, thank you for that. If you look at the first request in the list, it does not require the CurrentOrderId nor the AWS auth but that still returns a 301 aswell? I need the first request to populate the CurrentOrderId, therefore the others will fail on using CurrentOrderId.

Nouredine A.
Nouredine A.

Nouredine A.

Level
4
5000 / 5000
points
Team

Thanks for the clarificaitons. You said that from Postman it works. On your first request do you manage some dynamic parameter values or is it static values and so it's always the same data sent?

How did you create your NeoLoad requests? Did you record them or did you manually create them?

Jonathan T.
Jonathan T.

Jonathan T.

Level
0
35 / 100
points

The request is Static, please see the exported code in the screenshot. I have manually created them. Here is the code:

POST /1/Orders HTTP/1.1
Host: mm-api.qa.mmol.shopritelabs.co.za/api
x-api-key: zBZGkJgPDLVv080qX7PR88lL3oBWzzO7BQ1lL196
X-Amz-Content-Sha256: beaead3198f7da1e70d03ab969765e0821b24fc913697e929e726aeaebf0eba3
X-Amz-Date: 20201104T092836Z
Authorization: AWS4-HMAC-SHA256 Credential=AKIA42JSZIRRPGXJ45JH/20201104/eu-west-1/execute-api/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-api-key, Signature=824e57c7d06bf548c5bb91cf4c098972ab1abcb1f9ee23b852ec97a823c9970c
Content-Type: application/json
Content-Length: 810

{
"orderCreateRequest": {},
"moneymarket": {
"mmaudit": {
"employeeNumber": "00010103",
"employeeFullName": "John Doe",
"cashierNumber": "23",
"branchNumber": "10011",
"brandName": "RP",
"deviceId": "Beverley-WORKSPACE",
"deviceType": "KIOSK",
"ipAddress": "10.0.0.1",
"MMSessionID": "00010584-f05f-41c4-9611-5f31864b606b",
"ticketNo": 0,
"tillNo": 0
},
"channelType": "digital",
"originator": {
"institution": {
"id": "200",
"name": "bill provider"
}
}
},
"shoprite": {
"customerId": "50cbb6ad-665e-4171-af81-d0b50cf87983"
}
}

Nouredine A.
Nouredine A.

Nouredine A.

Level
4
5000 / 5000
points
Team

If you can run it from Postman could you edit the Postman preferences and add an HTTP proxy which will be the NeoLoad proxy. So if Postman and NeoLoad are on the same machine use "localhost:8090" as proxy.

Then start a NeoLoad recording without starting the client browser and execute your test from Postman. You should be able to see your requests recorded by NeoLoad.

This way we are sure that the request content is exactly the same. Then try again to see if you still have an HTTP 307 from NeoLoad.