[zeromq-dev] Unit-Testing ZMQ

Pieter Hintjens ph at imatix.com
Fri Feb 15 18:18:19 CET 2013


On Fri, Feb 15, 2013 at 7:03 AM, Christoph Heindl
<christoph.heindl at gmail.com> wrote:

>  - how to test a publisher subscriber? Since there are nearly no guarantees
> on the receiving side (messages can be lost), I wonder how I should
> reasonably test this. How's ZMQ testing publisher/subscriber?

There aren't *no* guarantees; messages get lost in very specific cases
such as buffer overflow or disconnection. Otherwise, there are the
same guarantees the underlying transport (e.g. tcp://) gives you.

Typically a simple count (send 1M, receive 1M) is sufficient.

>  - how to test timeouts? The reliable server/client implementation and the
> client-side of the fast server support wait timeouts.  I'd like to test
> them. However, these tests are carried out on our build servers that host
> many projects. Multiple projects at a time can be active, which means that
> the processor can be quite busy, which makes testing for time a hard thing.
> How are those tests performed in ZMQ?

A realistic app has to deal with busy CPUs so not to create fake
"timeout" errors.  Presumably your test programs have to do the same.
E.g. 1 second may be too low, 30 seconds too high.

-Pieter
> Best,
> Christoph
>
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
>



More information about the zeromq-dev mailing list