MGTS -- message generator and traffic simulator by Catapult
This is a great tool for protocol testing.
I have used it for testing a suite of TCAP (SS7 and SCTP) protocols like -- CS1, IS41 CALEA, CAMEL, etc
I haven't used it for SIP but It supports it. For SIP we use SIPp which is opensource and free and pretty decent.
MGTS has a State Machine Editor called PASM which allows it to create the sequence of messages to send and receive. This is a graphical editor and pretty handy. You could however also create state machines using it's scripting API or just editing text files.
MGTS also has a message editor to create the messages. Also if you are familiar with it's protocol definition files you can text edit the files to create templates and messages. If you are familiar with ASN1 (Abstract Syntax Notation) this would be quite easy and handy.
You can parameterize the messages and import them from a parameter DB. This also works for expected result parameters. Thus you have a lot of powerful features which are intuitive and easy to use.
When you run a test MGTS shows the message flows in a time line sequence which you can then click on to get more details. This call flow/time line sequence is pretty handy.
You can take the functional tests and convert them into a traffic run. You can set the calls per second rate and other parameters and generate a traffic graph/report as opposed to a call flow/timeline sequence diagram.
There is also a file manager where you can browse through other users tests and copy them if you want to. So tests are not global and you can protect them from being accidently deletion by others. It would be nice to have a versioning system and a global area though.
MGTS state machine editor allows you to export parameters from a received message and import them into a subsequent message you are sending or trigger some action based on them.
This is pretty handy.
MGTS has a soft shelf and also a hard shelf. It is pretty expensive.
Overall I think it is a good investment and a good tool.