0
votes

Project overview:

We are building a data ingestion backend platform. 3 major components of the backend system are: Listener (will ingest vehicle GPS tracker data and store in message queue) >> Adapter (will process the ingested data by Listener and store processed data in message queue) >> Datarouter (will route the processed data by Adapter to any 3rd party platform)

My Task:

In the above scenario, my task is to do the functional testing and performance testing of data ingestion backend platform using JMeter open source tool. We are using JMeter as a load generator tool, which is basically simulating the sending of vehicle GPS tracker data to the listener. In JMeter, we are using TCP sampler to send the data in the following format:

$$${data_identifier},${imei},AAA,35,${lat},${long},${__dateTimeConvert(${__time()},,yyMMddhhmmss)},
A,8,15,60,274,0.9,25,34900,211818,404|30|7033|0BBF5744,0000,0000|0000|0000|0190|04B7,00000001,,1,0000*80

From functional point of view, we need to check the data ingested by listener and finally routed by datarouter after processing is all consistent.

From performance point of view, we need to check that the backend system can handle load of say for ex. 100 vehicles sending data packets every 10 sec for continuous period of time lets say 15-20 days. Currently I am testing all the functions locally. After testing is done, deployment will happen to dev env.

Note: Please note that we are not using any big data tool like HDFS, Apache Spark etc. As a message broker, we are considering Redis/Kafka.

My question:

Please let me know what kind of functional and performance test scenarios to execute?

Any option to publish test results in statistical format/pictorial form directly from JMeter?

How can I ensure performance bottleneck & other performance aspects while testing in local environment setup?

1

1 Answers

0
votes
  1. Please let me know what kind of functional and performance test scenarios to execute?

    • it's your job to define the scenarios, you can start from normal Load Testing to see whether the system performance is acceptable given the anticipated load and them go for Stress Testing to identify the saturation point, the first bottleneck and first breaking point
  2. Any option to publish test results in statistical format/pictorial form directly from JMeter?

  3. How can I ensure performance bottleneck & other performance aspects while testing in local environment setup?

    • performance testing on local environment doesn't make a lot of sense because there are not too many things you can check there and the results you will get won't properly extrapolate to the larger system. You can still test several aspects against a scaled down environment like:

      • run functional tests
      • run soak tests
      • test components integration