Replies: 1 comment
-
A benefit of the MQTT architecture could be that it would be possible to attach the validator to a running setup and do passive testing on all communication: graph LR;
Site---Broker;
Broker---Supervisor;
Broker---Validator;
This way you can passively monitor all RSMP traffic over longer periods and log any thing that the Validator finds does not conform to the RSMP spec. Of course you cannot perform active testing on a live setup. So it's a diferent type of testing, but it could still be very valuable, and could catch regresssions. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
With RSMP we use the RSMP Validator to test implementations. When testing a site, the validator works as a supervisor, and waits for the site to connect. Once connected, the validator sends RSMP messages to the site and checks the response:
If we base RSMP 4 on MQTT, we need a broker:
It's easy to run a broker in a container. But it does mean that you need to have it running before running the validator.
The validator would use an MQTT library to connect to the broker.
In a real-world scenario, you need to configure the broker with Access Control Lists (ACL), e.g. so that only your supervisors can send commands. In case we have tests that relate to this, it would be important to have the right ACL setup for the test. In this case it might be best to somehow package the broker and it's settings as part of the validator, e.g. as a container.
Another option might be to use the API of the broker to manage ACLs directly from the validator, as part of the testing procedures.
Beta Was this translation helpful? Give feedback.
All reactions