The question came up today, about tshark… specifically if tshark/wireshark is smart enough to know which SIPP call is being captured in the media.
By default, no.
However, you can get around this to run simultaneous jobs if you design your architecture to make use of Virtual Machines. In my case, I have 5 Virtual Machines. Each one runs a set of SIPP tests on a hourly schedule.
If the SIPP tests run on top of each other (one call to phone number X and another to phone number Y), tcast will get a packet capture of both media streams… but it won’t know which stream goes to whom. So if stream #1 fails and stream #2 passes… it won’t know what test to pass.
I get around this limitation by using Virtual Machines:
I set up the schedule so that Virtual Machine #1, handles Outbound tests only, with specific carriers. I need each test to run every hour, so I have the ability to run about 6 tests… each sep. by 10min.
For my purposes, if a test fails I retry it. So… Test #1 runs, fails, it retries in 2min. I retry up to 3 times. This gets me 8-10 min worth of testing. So I’m limited to 6 tests I can run per hour.
So for my design, I have Virtual Machine #1 that runs 6 outbound tests an hour. Virtual Machine #2 runs 6 inbound tests an hour… and so forth. This way they can overlap.
Each virtual machine has it’s own Jenkins, driving it’s own jobs (their own packet capture and sipp call.)
The easiest way to do this, is get one Virtual Machine all set up with Jenkins. Once you have it working really well, clone it to multiple other VM’s and change the jobs on each Jenkins of each VM.