mojolingo / sippy_cup

Create SIP load test scenarios the easy way
http://mojolingo.github.io/sippy_cup
MIT License
218 stars 78 forks source link

A scenario is not always outbound with limits #78

Closed benlangfeld closed 9 years ago

benlangfeld commented 9 years ago

This removes the defaults such that calling limits (maximum concurrent calls, overall maximum number of calls, CPS and target user) are only imposed if specified. UAS scenarios will typically not specify these.

benlangfeld commented 9 years ago

@bklang Does this appropriately capture your intent with this change?

I'll repeat my question from https://github.com/mojolingo/sippy_cup/commit/3ccc865b1ac74d0b7ccab81314d15e44b1fc0c61#commitcomment-10241075 since it got lost in the rebasing: Is it guaranteed that something useful will happen on a scenario where these options are not specified?

bklang commented 9 years ago

Is it guaranteed that something useful will happen on a scenario where these options are not specified?

The main danger is that, without the number_of_calls option specified on a scenario (sender or receiver) it effectively runs forever. On a receiver, that's probably desired, since at least in SIP Treadmill we kill the receiver when the sender finishes. It's arguable that users of Sippy Cup will also want this behavior available, and manually kill SIPp when they are done.

A sender scenario requires the calls_per_second and concurrent_max to run at all (iirc), but generally I've not ever needed them on a receiver scenario. I'm not even certain whether SIPp would respect those options.

One last thing: the change you made regarding sip_user is wrong. It may default to nil within Sippy Cup, but if unspecified (which nil would do) SIPp defaults to s.

benlangfeld commented 9 years ago

I fixed the docs and added a CHANGELOG entry. Merge if you think it's done please, @bklang.